数据库的命令都有哪些?

如题所述

1、显示当前存在的数据库 mysql> show databases;

2、选择数据库 mysql> USE mysql Database changed (USE 和 QUIT 命令不需要分号结束。),显示当前选择的数据库 mysql> select database();

3、显示当前数据库中存在的表 mysql> SHOW TABLES;

4、显示表(db)的内容 mysql>select * from db;

5、命令的取消 当命令输入错误而又无法改变(多行语句情形)时,只要在分号出现前就可以用 c来取消该条命令 mysql> select -> user() -> c

6、创建一个数据库abccs mysql> CREATE DATABASE abccs;

7、选择你所创建的数据库 mysql> USE abccs Database changed;

8、创建一个数据库表 首先看现在你的数据库中存在什么表: mysql> SHOW TABLES; Empty set (0.00 sec) 说明刚才建立的数据库中还没有数据库表。下面来创建一个数据库表mytable: 我们要建立一个你公司员工的生日表,表的内容包含员工姓名、性别、出生日期、出生城市。 mysql> CREATE TABLE mytable (name VARCHAR(20), sex CHAR(1), birth DATE, birthaddr VARCHAR(20));

9、显示表的结构: mysql> DESCRIBE mytable;

10、 往表中加入记录 我们先用SELECT命令来查看表中的数据: mysql> select * from mytable; Empty set (0.00 sec) 这说明刚才创建的表还没有记录。 加入一条新记录: mysql> insert into mytable values ('abccs','f','1977-07-07','china');

11、用文本方式将数据装入一个数据库表 如果一条一条地输入,很麻烦。我们可以用文本文件的方式将所有记录加入你的数据库表中。 创建一个文本文件“mysql.txt”,每行包含一个记录,用定位符(tab)把值分开,并且以在 CREATE TABLE语句中列出的列次序给出,例如: abccs f 1977-07-07 china   mary f 1978-12-12 usa tom m 1970-09-02 usa 使用下面命令将文本文件“mytable.txt”装载到mytable表中: mysql> LOAD DATA LOCAL INFILE "mytable.txt" INTO TABLE pet; 再使用如下命令看看是否已将数据输入到数据库表中: mysql> select * from mytable;

12、从数据库表中检索信息 select语句格式一般为: SELECT 检索关键词 FROM 被检索的表 WHERE 检索条件

13、查询所有数据: mysql> select * from mytable;

14、修正错误记录: 假如tom的出生日期有错误,应该是1973-09-02,则可以用update语句来修正: mysql> update mytable set birth = "1973-09-02" where name = "tom";

15、 选择特定列 假如你想查看表中的所有人的姓名,则可以这样操作: mysql> SELECT name FROM mytable; 如果想列出姓名和性别两列,则可以用逗号将关键词name和birth分开: myaql> select name,birth from mytable;

16、对行进行排序 我们可以对表中的记录按生日大小进行排序: mysql> SELECT name, birth FROM mytable ORDER BY birth; 我们可以用DESC来进行逆序排序: mysql> SELECT name, birth FROM mytable ORDER BY birth DESC;
17、 行计数 数据库经常要统计一些数据,如表中员工的数目,我们就要用到行计数函数COUNT()。 COUNT()函数用于对非NULL结果的记录进行计数: mysql> SELECT COUNT(*) FROM mytable; 员工中男女数量: mysql> SELECT sex, COUNT(*) FROM mytable GROUP BY sex;

18、多表查询 现在我们有了两个表: mytable 和 title。利用这两个表我们可以进行组合查询: 例如我们要查询作者abccs的姓名、性别、文章: mysql> SELECT name,sex,title FROM mytable,title WHERE name=writer AND name='abccs'; 用于查询文章a2的作者、出生地和出生日期: mysql> select title,writer,birthaddr,birth from mytable,title -> where mytable.name=title.writer and title='a2';

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

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

21、增加记录 前面已经讲过如何增加一条记录,为便于查看,重复与此: mysql> insert into mytable values ('abc','f','1966-08-17','china','n');

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

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

24、数据库的删除: mysql> drop database
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-10-24
您要问那些数据库的命令?
是查询?操作还是 管理?
select,update,insert,delete
alter ,create ,drop,lock table
还有管理命令,mysql ,oracle ,sql server 数据库的命令是不一样的。
第2个回答  推荐于2017-05-22
(1)数据记录筛选:
sql="select * from 数据表 where 字段名=字段值 orderby 字段名 [desc] "
sql="select * from 数据表 where 字段名 like '%字段值%' orderby 字段名 [desc]"
sql="select top10 * from 数据表 where 字段名 orderby 字段名[desc]"
sql="select * from 数据表 where 字段名 in('值1','值2','值3')"
sql="select * from 数据表 where 字段名 between 值1 and 值 2"
(2)更新数据记录:
sql="update 数据表 set 字段名=字段值 where 条件表达式"
sql="update 数据表 set 字段1=值1,字段2=值2……字段n=值n where 条件表达式"
(3)删除数据记录:
sql="delete from 数据表 where 条件表达式"
sql="delete from 数据表 "(将数据表所有记录删除)
(4)添加数据记录:
sql="insert into 数据表(字段1,字段2,字段3…) values(值1,值2,值3…)"
sql="insert into 目标数据表 select * from 源数据表"(把源数据表的记录添加到目标数据表)
(5)数据记录统计函数:
AVG(字段名)得出一个表格栏平均值
COUNT(*|字段名)对数据行数的统计或对某一栏有值的数据行数统计
MAX(字段名)取得一个表格栏最大的值
MIN(字段名)取得一个表格栏最小的值
SUM(字段名)把数据栏的值相加
引用以上函数的方法:
sql="selectsum(字段名)as别名from数据表where条件表达式"
setrs=conn.excute(sql)
用rs("别名")获取统的计值,其它函数运用同上。
(5)数据表的建立和删除:
CREATETABLE数据表名称(字段1类型1(长度),字段2类型2(长度)……)
例:CREATETABLEtab01 (namevarchar (50), datetimedefaultnow ())
DROPTABLE数据表名称(永久性删除一个数据表)
4.记录集对象的方法:
rs.movenext将记录指针从当前的位置向下移一行
rs.moveprevious将记录指针从当前的位置向上移一行
rs.movefirst将记录指针移到数据表第一行
rs.movelast将记录指针移到数据表最后一行
rs.absoluteposition=N将记录指针移到数据表第N行
rs.absolutepage=N将记录指针移到第N页的第一行
rs.pagesize=N设置每页为N条记录
rs.pagecount根据pagesize的设置返回总页数
rs.recordcount返回记录总数
rs.bof返回记录指针是否超出数据表首端,true表示是,false为否
rs.eof返回记录指针是否超出数据表末端,true表示是,false为否
rs.delete删除当前记录,但记录指针不会向下移动
rs.addnew添加记录到数据表末端
rs.update更新数据表记录

SQL语句的添加、删除、修改虽然有如下很多种方法,但在使用过程中还是不够用,不知是否有高手把更多灵活的使用方法贡献出来?

添加、删除、修改使用db.Execute(Sql)命令执行操作
╔----------------╗
☆ 数据记录筛选 ☆
╚----------------╝
注意:单双引号的用法可能有误(没有测式)

Sql = "Select Distinct 字段名 From 数据表"
Distinct函数,查询数据库存表内不重复的记录

Sql = "Select Count(*) From 数据表 where 字段名1>#18:0:0# and 字段名1< #19:00# "
count函数,查询数库表内有多少条记录,“字段名1”是指同一字段
例:
set rs=conn.execute("select count(id) as idnum from news")
response.write rs("idnum")

sql="select * from 数据表 where 字段名 between 值1 and 值2"
Sql="select * from 数据表 where 字段名 between #2003-8-10# and #2003-8-12#"
在日期类数值为2003-8-10 19:55:08 的字段里查找2003-8-10至2003-8-12的所有记录,而不管是几点几分。

select * from tb_name where datetime between #2003-8-10# and #2003-8-12#
字段里面的数据格式为:2003-8-10 19:55:08,通过sql查出2003-8-10至2003-8-12的所有纪录,而不管是几点几分。

Sql="select * from 数据表 where 字段名=字段值 order by 字段名 [desc]"

Sql="select * from 数据表 where 字段名 like '%字段值%' order by 字段名 [desc]"
模糊查询

Sql="select top 10 * from 数据表 where 字段名 order by 字段名 [desc]"
查找数据库中前10记录

Sql="select top n * form 数据表 order by newid()"
随机取出数据库中的若干条记录的方法
top n,n就是要取出的记录数

Sql="select * from 数据表 where 字段名 in ('值1','值2','值3')"

╔----------------╗
☆ 添加数据记录 ☆
╚----------------╝
sql="insert into 数据表 (字段1,字段2,字段3 …) valuess (值1,值2,值3 …)"

sql="insert into 数据表 valuess (值1,值2,值3 …)"
不指定具体字段名表示将按照数据表中字段的顺序,依次添加

sql="insert into 目标数据表 select * from 源数据表"
把源数据表的记录添加到目标数据表

╔----------------╗
☆ 更新数据记录 ☆
╚----------------╝
Sql="update 数据表 set 字段名=字段值 where 条件表达式"

Sql="update 数据表 set 字段1=值1,字段2=值2 …… 字段n=值n where 条件表达式"

Sql="update 数据表 set 字段1=值1,字段2=值2 …… 字段n=值n "
没有条件则更新整个数据表中的指定字段值

╔----------------╗
☆ 删除数据记录 ☆
╚----------------╝
Sql="delete from 数据表 where 条件表达式"

Sql="delete from 数据表"
没有条件将删除数据表中所有记录)

╔--------------------╗
☆ 数据记录统计函数 ☆
╚--------------------╝
AVG(字段名) 得出一个表格栏平均值
COUNT(*|字段名) 对数据行数的统计或对某一栏有值的数据行数统计
MAX(字段名) 取得一个表格栏最大的值
MIN(字段名) 取得一个表格栏最小的值
SUM(字段名) 把数据栏的值相加

引用以上函数的方法:
sql="select sum(字段名) as 别名 from 数据表 where 条件表达式"
set rs=conn.excute(sql)
用 rs("别名") 获取统的计值,其它函数运用同上。

╔----------------------╗
☆ 数据表的建立和删除 ☆
╚----------------------╝
CREATE TABLE 数据表名称(字段1 类型1(长度),字段2 类型2(长度) …… )
例:CREATE TABLE tab01(name varchar(50),datetime default now())
DROP TABLE 数据表名称 (永久性删除一个数据表)

╔--------------------╗
☆ 记录集对象的方法 ☆
╚--------------------╝
rs.movenext 将记录指针从当前的位置向下移一行
rs.moveprevious 将记录指针从当前的位置向上移一行
rs.movefirst 将记录指针移到数据表第一行
rs.movelast 将记录指针移到数据表最后一行
rs.absoluteposition=N 将记录指针移到数据表第N行
rs.absolutepage=N 将记录指针移到第N页的第一行
rs.pagesize=N 设置每页为N条记录
rs.pagecount 根据 pagesize 的设置返回总页数
rs.recordcount 返回记录总数
rs.bof 返回记录指针是否超出数据表首端,true表示是,false为否
rs.eof 返回记录指针是否超出数据表末端,true表示是,false为否
rs.delete 删除当前记录,但记录指针不会向下移动
rs.addnew 添加记录到数据表末端
rs.update 更新数据表记录

%:代表任意长的一段字符 _ :代表一个字符 [a,b,c,d]:a、b、c、d中的任意一个 [^a,b,c,d]:不在a、b、c、d中的任意一个
相似回答