MYSQL:限制MySql插入的字长

时间:2010-04-04 18:13:15

标签: sql mysql

每个搜索查询都保存在我的数据库中,但我想限制一个单词的Chracterlength:odisafuoiwerjsdkle - >长度太多 - >不要写在数据库中

我的实际代码是:

$search = $_GET['q']; 


    if (!($sql = mysql_query ('' . 'SELECT * FROM `history` WHERE `Query`=\'' . $search . '\'')))    {
      exit ('<b>SQL ERROR:</b> 102, Cannot write history.');
      ;
    }

    while ($row = mysql_fetch_array ($sql))    {
      $ID = '' . $row['ID'];
    }

    if ($ID == '')
    {
      mysql_query ('' . 'INSERT INTO history (Query) values (\'' . $search . '\')');
    }

    if (!($sql = mysql_query ('SELECT * FROM `history` ORDER BY `ID` ASC LIMIT 1')))
    {
      exit ('<b>SQL ERROR:</b> 102, Cannot write history.');
      ;
    }

    while ($row = mysql_fetch_array ($sql)) {
      $first_id = '' . $row['ID'];
    }

    if (!($sql = mysql_query ('SELECT * FROM `history`')))
    {
      exit ('<b>SQL ERROR:</b> 102, Cannot write history.');
      ;
    }

1 个答案:

答案 0 :(得分:0)

一种选择是在表格中使用触发器。但是,如果您期望搜索引擎上有大量流量,那么它可能无法很好地扩展。因此,使用客户端(在您的情况下为PHP)约束可能是更好的选择。