Mysql中对表操作的语法集锦

Mysql中对表操作的语法集锦
 
【添加字段命令】
     ALTER TABLE tab_name 
          ADD col_name col_default 添加一个字段  
              mysql>ALTER TABLE Zone ADD TINYINT NOT NULL ;
          ADD col_name col_default  AFTER col_name 将新定义的字段添加到某个字段之后
              mysql>ALTER TABLE Zone ADD TINYINT NOT NULL AFTER host;
          ADD col_name col_default  FIRST 将新定义的字段或添加为第一个字段
              mysql>ALTER TABLE Zone ADD TINYINT NOT NULL FIRST;
【修改字段】
          CHANGE old_name new_name col_defination [AFTER col_name/FISTER]   将字段的           名字也可以改变并可以改变字段 的放置位置
              mysql>ALTER TABLE Zone CHANGE Master Tutor TINYINT UNSIGEN AFTER Age               将字段Zone改为Master
          MODIFY  col_name col_defination 只对字段的属性进行修改
              mysql>ALTER TABLE Zone MODIFY Gender ENUM('F','M') NOT NULL DEFAULT                 'M'

【添加索引】
          ADD {INDEX|KEY}  [index_name] [index_type] (col_name)
              mysql>ALTER TABLE Zone ADD INDEX index_age (Age);对Age字段添加名为                 index_age的索引,当不指定索引 的名字时,采用字段名
【删除索引】
          DROP {INDEX | KEY} index_name
              mysql>ALTER TABLE Zone DROP INDEX index_age;
【删除键】
          DORP PRIMARY KEY
                                  
【给表重命名】
  1、 ALTER TABLE oldtab_name RENAME TO newtab_name
              mysql>ALTER TABLE Zone RENAME TO Zones;
  2、 RENAME TABLE oldtab_name TO newtab_name       
              mysql>RENAME TABLE Zone TO Zones;

【向表新增数据】
  1、INSERT INTO tab_name (col1,col2..) VALUES ('val1','val2'...)  向某个表中的特定   字段添加相应的数据
                                                                        
  2、INSETT INTO tab_name SET col1='val1'  直接给某个表中的某个字段设定值
              
  3、INSERT INTO tab_name (col_name) VALUES ('val')这是在表中的其他字段都可以为空的   情况下才可是使用,否侧将出现错误,如果mysqld定义的是非严格模式的话,虽然报错了但是   还可以插入,如果定义的是严格模式就不能插入了。  
                                  
  4、INSERT INTO tab_name VALUEs('val1','val2'....)根据表中定义的字段顺序插入相应的   数据
      我们可以根据下图中表的结构,进行如下的插入方法:
 

      mysql> INSERT INTO knight VALUS   ('1','WUSONG','XIAO','25','LINCHONG','SFSF','2');                                                            

5、成批插入,一次插入多行数据
    INSERT INTO tab_name(col_name) VALUES ('val1'),('val2').('val3'); 对一个字段一次     插入多个数据即一次插入多行数据      
   (注:使用REPLACE也可以实现数据的插入,当使用REPLACE插入数据时,如果插入的数据和表中原有数据的字段名相同 ,EPLACE将在不提醒操作者的情况下用新的内容替换掉旧的内容,而INSERT将进行报错,所以REPLACE的这个行为是比较危 险的,所以我们尽量不实用REPLACE)

【修改数据】
    UPDATE tab_name SET col1=val1  [WHERE cluse]  如果不加上WHERE 的匹配语句的时候,     将对表中所有这个字段都进行同 样的修改,这个一定得小心。
    UPDATE domain SET name='na' WHERE name='nange'; 将字段name的值为nange的修改为na 
      
    UPDATE tab_name set col1=val1 LIMIT n  修改多少行的数据  对n行中相应字段进行同样     的修改
      
【删除数据】
1、DELETE FROM TABLE [WHERE cluse] 如果不加WHERE 的匹配语句的时候,将删除这个表中所    有数据,这个一定得小心
  (注:当我们使用这种方法对表中的某行数据进行删除之后,再添加数据的时候会发现表中行的计数是不连续的,如我们删除的行为第4行,再添加数据时法现当前的行为第5行,而不是取代了刚刚删除的第4行,这我们就得使用下面的方法进行调试
        SLECT LAST_INSERT_ID(); 查看上次插入时的行号是多少
        ALTER TABLE tab_name AUTO_INCEREMENT=n设定下次插入时行数为n)

2、TRUNCATE TABLE tab_name;清空一个表,数据行的计数会连续执行 

你可能感兴趣的:(mysql,数据库,语法,休闲,表)