关闭

嵌入式 mysql之修改语句alter与update

359人阅读 评论(0) 收藏 举报
分类:

MYSQL的常用命令,对表的修改与表结构修改.

 

有时我们要对数据库表和数据库进行修改和删除,可以用如下方法实现:

1、增加一列: 
如在前面例子中的mytable表中增加一列表示是否单身single: 
mysql> alter table mytable add column single char(1);

2、修改记录 
将abccs的single记录修改为“y”: 
mysql> update mytable set single='y' where name='abccs';

现在来看看发生了什么: 
mysql> select * from mytable; 
+----------+------+------------+-----------+--------+ 
| name | sex | birth | birthaddr | single | 
+----------+------+------------+-----------+--------+ 
| abccs|f | 1977-07-07 | china | y | 
| mary |f | 1978-12-12 | usa | NULL | 
| tom |m | 1970-09-02 | usa | NULL | 
+----------+------+------------+-----------+--------+

3、增加记录 
前面已经讲过如何增加一条记录,为便于查看,重复与此: 
mysql> insert into mytable 
-> values('abc','f','1966-08-17','china','n'); 
Query OK, 1 row affected (0.05 sec) 
查看一下: 
mysql> select * from mytable; 
+----------+------+------------+-----------+--------+ 
| name | sex | birth | birthaddr | single | 
+----------+------+------------+-----------+--------+ 
| abccs|f | 1977-07-07 | china | y | 
| mary |f | 1978-12-12 | usa | NULL | 
| tom |m | 1970-09-02 | usa | NULL | 
| abc |f | 1966-08-17 | china | n | 
+----------+------+------------+-----------+--------+


3、删除记录 
用如下命令删除表中的一条记录: 
mysql> delete from mytable wherename='abc'; 
DELETE从表中删除满足由where给出的条件的一条记录。

再显示一下结果: 
mysql> select * from mytable; 
+----------+------+------------+-----------+--------+ 
| name | sex | birth | birthaddr | single | 
+----------+------+------------+-----------+--------+ 
| abccs|f | 1977-07-07 | china | y | 
| mary |f | 1978-12-12 | usa | NULL | 
| tom |m | 1970-09-02 | usa | NULL | 
+----------+------+------------+-----------+--------+

4、删除表: 
mysql> drop table ****(表1的名字),***表2的名字; 
可以删除一个或多个表,小心使用。

5、数据库的删除: 
mysql> drop database 数据库名; 
小心使用。

6、数据库的备份: 
退回到DOS: 
mysql> quit 
d:mysqlbin 
使用如下命令对数据库abccs进行备份: 
mysqldump --opt abccs>abccs.dbb 
abccs.dbb就是你的数据库abccs的备份文件。

7、用批处理方式使用MySQL:

首先建立一个批处理文件mytest.sql,内容如下: 
use abccs; 
select * from mytable; 
select name,sex from mytable where name='abccs';

在DOS下运行如下命令: 
d:mysqlbin mysql < mytest.sql 
在屏幕上会显示执行结果。

如果想看结果,而输出结果很多,则可以用这样的命令: 
mysql < mytest.sql | more

我们还可以将结果输出到一个文件中: 
mysql < mytest.sql > mytest.out

 

加索引549830479

   mysql> alter tabletablename change depno depno int(5) not null;
mysql> alter table tablename add index 索引名 (字段名1[,字段名2…]);
mysql> alter table tablename add index emp_name (name);

加主关键字的索引549830479


mysql> alter table tablename add primary key(id);


加唯一限制条件的索引549830479

mysql> alter table tablename add uniqueemp_name2(cardnumber);


删除某个索引549830479

   mysql>alter table tablenamedrop index emp_name;


修改表:549830479

增加字段:549830479

   mysql> ALTER TABLEtable_name ADD field_name field_type;


修改原字段名称及类型:549830479

   mysql> ALTER TABLEtable_name CHANGE old_field_name new_field_name field_type;


删除字段:549830479

   mysql> ALTER TABLEtable_name DROP field_name;

PS;修改字段属性

ALTER TABLE tableName MODIFY cloumnName DATETIME;

 


//主键549830479

   alter table tabelname add new_field_id int(5) unsigned default 0 not null auto_increment ,add primary key (new_field_id);

//增加一个新列549830479

   alter table t2 add d timestamp;
alter table infos add ex tinyint not null default '0';

//删除列549830479

   alter table t2 drop column c;

//重命名列549830479

   alter table t1 change a b integer;


//改变列的类型549830479

   alter table t1 change b b bigint not null;
alter table infos change list list tinyint not null default '0';

//重命名表549830479

   alter table t1 rename t2;

加索引549830479

   mysql> alter table tablename change depno depno int(5) not null;
mysql> alter table tablename add index 索引名 (字段名1[,字段名2 …]);
mysql> alter table tablename add index emp_name (name);

加主关键字的索引549830479

mysql> alter table tablename add primary key(id);

加唯一限制条件的索引549830479

  mysql> alter table tablename add unique emp_name2(cardnumber);

删除某个索引549830479

   mysql>alter table tablename drop index emp_name;

修改表:549830479

增加字段:549830479

   mysql> ALTER TABLE table_name ADD field_name field_type;

修改原字段名称及类型:549830479

   mysql> ALTER TABLE table_name CHANGE old_field_name new_field_name field_type;

删除字段:549830479

   mysql> ALTER TABLE table_name DROP field_name;

1:删除列

ALTER TABLE 【表名字】 DROP 【列名称】

2:增加列

ALTER TABLE 【表名字】 ADD 【列名称】 INT NOT NULL  COMMENT'注释说明'

3:修改列的类型信息

ALTER TABLE 【表名字】 CHANGE 【列名称】【新列名称(这里可以用和原来列同名即可)】 BIGINT NOTNULL  COMMENT '注释说明'

4:重命名列

ALTER TABLE 【表名字】 CHANGE 【列名称】【新列名称】 BIGINT NOTNULL  COMMENT '注释说明'

5:重命名表

ALTER TABLE 【表名字】 RENAME 【表新名字】

6:删除表中主键

Alter TABLE 【表名字】 drop primary key

7:添加主键

ALTER TABLE sj_resource_charges ADD CONSTRAINTPK_SJ_RESOURCE_CHARGES PRIMARY KEY (resid,resfromid)

8:添加索引

ALTER TABLE sj_resource_charges add indexINDEX_NAME (name);

9: 添加唯一限制条件索引

ALTER TABLE sj_resource_charges add uniqueemp_name2(cardnumber);

10: 删除索引

alter table tablename drop index emp_name; 
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:978269次
    • 积分:17617
    • 等级:
    • 排名:第540名
    • 原创:741篇
    • 转载:522篇
    • 译文:0篇
    • 评论:105条
    最新评论