用 USE 选用数据库: 句法: USE db_name
功能:USE db_name 语句告诉 MySQL 使用 db_name 数据库作为随后的查询的缺省数据库。数据库保持到会话结束,或发出另外一个 USE 语句
2、有关数据表的操作
用 SHOW/ DESCRIBE 语句显示数据表的信息
句法:
SHOW TABLES [FROM db_name] [LIKE wild] //列出在一个给定的数据库中的表信息
or SHOW COLUMNS FROM tbl_name [FROM db_name] [LIKE wild] //获取信息的表中的列类型。注意, MySQL 有时改变列类型
or SHOW INDEX FROM tbl_name [FROM db_name] //以非常相似于 ODBC 的 SQLStatistics 调用的格式返回索引信息
or SHOW TABLE STATUS [FROM db_name] [LIKE wild] //提供每个表的更多信息
{DESCRIBE | DESC} tbl_name {col_name | wild} //列出在一个给定的数据库中的表信息
用 ALTER TABLE 语句修改表的结构 有时你可能需要改变一下现有表的结构,那么 Alter Table 语句将是你的合适选择。
增加列
alter table tbl_name add col_name type
例如,给表增加一列 weight
mysql>alter table pet add weight int;
删除列
alter table tbl_name drop col_name
例如,删除列 weight:
mysql>alter table pet drop weight;
改变列
alter table tbl_name modify col_name type
例如,改变 weight 的类型:
mysql> alter table pet modify weight samllint;
用 DROP TABLE 语句删除数据表
DROP TABLE [IF EXISTS] tbl_name [, tbl_name,...]
DROP TABLE 删除一个或多个数据库表。所有表中的数据和表定义均被删除,故小心使用这个命令!
使用 INSERT 语句插入新数据
语法: INSERT [INTO] tbl_name [(col_name,...)] VALUES (pression,...),…
or INSERT [INTO] tbl_name SET col_name=expression, ...
or 使用 INSERT…SELECT 语句插入从其他表选择的行
让我们开始利用 INSERT 语句来增加记录,这是一个 SQL 语句,需要为它指定希望插入数据行的表或将值按行放入的表。 INSERT 语句具有几种形式:
eg:
shell> mysql –u root –p
mysql> use mytest;
mysql> insert into worker (name) values (‘tom’); //单独为某一列赋值
mysql> insert into worker values(“tom”,”tom@yahoo.com”); //插入所有字段时,不需要列出对应列的名字
mysql> insert into worker values(‘tom’,’tom@yahoo.com’),(‘paul’,’paul@yahoo.com’); //插入多行数据
mysql> insert into tbl_name1(col1,col2) select col3,col4 from tbl_name2; //使用 INSERT…SELECT 语句插入从其他表选择的行
用SELECT语句查询数据表中的记录(最常用的语句)
SELECT 语句的语法如下:
SELECT selection_list 选择哪些列
FROM table_list 从何处选择行
WHERE primary_constraint 行必须满足什么条件
GROUP BY grouping_columns 怎样对结果分组,GROUP BY col_name, ….,查询显示结果时,被分组的列如果有重复的值,只返回靠前的记录,并且 返回的记录集是排序的。这并不是一个很好的结果。仅仅使用 GROUP BY 从句并没有什么意义,该从句的真正作用在于与各种组合函数配合,一般与用于行计数的函数COUNT(col_name),用于统计对应列满足条件的的数量
HAVING secondary_constraint 行必须满足的第二条件
ORDER BY sorting_columns 怎样对结果排序,ORDER BY column_name [ASC|DESC] [,…],其中 ASC 表示升序,为默认值, DESC 为降序。ORDER BY 不能按 text、 text 和image 数据类型进行排序。另外,可以根据表达式进行排序。
LIMIT count 结果限定
注意:所有使用的关键词必须精确地以上面的顺序给出。例如,一个 HAVING 子句必须跟在 GROUP BY 子句之后和 ORDER BY 子句之前。
eg:
mysql> SELECT * FROM pet WHERE name = "Bowser"; //简单查询
mysql> SELECT * FROM pet WHERE birth >= "1998-1-1";
mysql> SELECT * FROM pet WHERE (species = "cat" AND sex = "m")
-> OR (species = "dog" AND sex = "f"); //使用逻辑运算符筛选
mysql> SELECT name, species, birth FROM pet ORDER BY species, birth DESC; //排序ORDER BY,按动物的种类排序,然后按生日
mysql> SELECT owner, COUNT(*) FROM pet GROUP BY owner; //要知道每个主人有多少宠物,并且返回结果按主人名字排序
mysql> SELECT species, COUNT(*) FROM pet GROUP BY species; //每种宠物的个数,并且返回结果按宠物种类排序
mysql> SELECT pet.name, (TO_DAYS(date) - TO_DAYS(birth))/365 AS age, remark
-> FROM pet, event
-> WHERE pet.name = event.name AND type = "litter"; //查询两张表
用 UPDATE语句 修改记录
UPDATE tbl_name SET 要更改的列WHERE 要更新的记录
这里的 WHERE 子句是可选的,因此如果不指定的话,表中的每个记录都被更新。
eg:
mysql> update pet set sex=’f’ where name=” Whistler”;
用 DELETE 语句删除记录
DELETE FROM tbl_name WHERE 要删除的记录
注意:WHERE 子句指定哪些记录应该删除。它是可选的,但是如果不选的话,将会删除所有的记录。这意味着最简单的 DELETE 语句也是最危险的。为了删除特定的记录,可用 WHERE 子句来选择所要删除的记录。这类似于SELECT 语句中的 WHERE 子句。 eg:
mysql> delete from pet where name=”Whistler”;
mysql>delete from pet; //可以用下面的语句清空整个表
腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。