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;清空一个表,数据行的计数会连续执行 

相关内容