mysql语句汇总 CREATE主句
CREATE DATABASE IF NOT EXISTS <数据库名> DEFAULT CHARACTER SET <字符集名> DEFAULT COLLATE <排序方法名> ;
CREATE TABLE IF NOT EXISTS <表名> ( <列名> <数据类型> [<约束>] [,<列名> <数据类型> [<约束>] ] [,<约束 > ] )
-
- 整数类型:TINYINT、SMALLINT、MEDIUMINT、INT、BIGINT
- 浮点数类型:FLOAT、DOUBLE
- 定点数类型:DECIMAL
- 日期/时间类型:YEAR、TIME、DATE、DATETIME、TIMESTAMP
- 字符串类型:CHAR、VARCHAR、TINYTEXT、TEXT、MEDIUMTEXT、LONGTEXT、ENUM、SET
- 二进制类型:BIT、BINARY、VARBINARY、TINYBLOB、BLOB、MEDIUMBLOB、LONGBLOB
- 主键约束:PRIMARY KEY、PRIMARY KEY(主键列1,主键列2,…,主键列n)
- 外键约束:[CONSTRAINT <外键名>] FOREIGN KEY (外键列1,外键列2,…,外键列n) REFERENCES <主表名>(主键列1,主键列2,…,主键列n)
- 唯一约束:UNIQUE、CONSTRAINT <唯一约束名> UNIQUE(<列名>)
- 检查约束:CHECK(<表达式>)、CONSTRAINT <检查约束名> CHECK(<表达式>)
- 非空约束:NOT NULL
- 默认值约束:DEFAULT <默认值>
比较全面的MySql常用命令介绍
让我们来看看最全面的MySql常用命令。相信大家看完都会受益匪浅。文字不太精炼。我希望最全面的MySql常用命令的简短内容就是您想要的
1:使用SHOW语句找出在云服务器上当前存在什么数据库:
mysql> SHOW DATABASES;
2:2、创建一个数据库MYSQLDATA
mysql> CREATE DATABASE MYSQLDATA;
3:选择你所创建的数据库
mysql> USE MYSQLDATA;
(按回车键出现Database changed 时说明操作成功!)
4:查看现在的数据库中存在什么表
mysql> SHOW TABLES;
5:创建一个数据库表
mysql> CREATE TABLE MYTABLE (name VARCHAR(20), sex CHAR(1));
6:显示表的结构:
mysql> DESCRIBE MYTABLE;
7:往表中加入记录
mysql> insert into MYTABLE values (”hyq”,”M”);
8:用文本方式将数据装入数据库表中(例如D:/mysql.txt)
mysql> LOAD DATA LOCAL INFILE “D:/mysql.txt” INTO TABLE MYTABLE;
9:导入.sql文件命令(例如D:/mysql.sql)
mysql>use database;
mysql>source d:/mysql.sql;
10:删除表
mysql>drop TABLE MYTABLE;
11:清空表
mysql>delete from MYTABLE;
12:更新表中数据
mysql>update MYTABLE set sex=”f” where name=’hyq’;
以下是我偶然在网络上看到的使用MySql的管理经验。
MySql在windows中是作为服务存在的。在使用它之前,您应该确保该服务已经启动。如果没有启动,可以用net start mysql命令启动它。 在Linux中,启动时可以使用“/etc/rc.d/init.d/mysqld start”命令。请注意,启动器应该具有管理员权限。
新安装的MySql包含一个密码为空的root账号和一个匿名账号,存在很大的安全隐患。对于一些重要的应用,我们应该尽可能地提高安全性。这里,我们应该删除匿名帐户,并为root帐户设置密码。可以使用以下命令:
use mysql;
delete from User where User=”";
update User set Password=PASSWORD(’newpassword’) where User=’root’;
如果要对用户所用的登录终端进行限制,可以更新User表中相应用户的Host字段,在进行了以上更改后应重新启动数据库服务,此时登录时可用如下类似命令:
mysql -uroot -p;
mysql -uroot -pnewpassword;
mysql mydb -uroot -p;
mysql mydb -uroot -pnewpassword;
上述命令参数是通用参数的一部分。有关详细信息,请参考文档。 这里的Mydb是要登录的数据库的名称。
在开发和实际应用中,用户不应该只使用root来连接数据库。虽然使用root进行测试很方便,但是会给系统带来很大的安全隐患,也不利于管理技能的提高。 我们为应用程序中使用的用户提供最合适的数据库权限。 例如,只插入数据的用户不应被授予删除数据的权限。 MySql的用户管理是通过用户表实现的。添加新用户有两种常用方法。一种是在用户表中插入相应的数据行,同时设置相应的权限。第二种是通过GRANT命令创建一个具有一定权限的用户。 GRANT的常见用法如下:
grant all on mydb.* to NewUserName@HostName identified by “password” ;
grant usage on *.* to NewUserName@HostName identified by “password”;
grant select,insert,update on mydb.* to NewUserName@HostName identified by “password”;
grant update,delete on mydb.TestTable to NewUserName@HostName identified by “password”;
如果要让该用户能够管理其在相应对象上的权限,可以在GRANT后添加with GRANT选项。 对于通过插入用户表添加的用户,要用密码功能对密码字段进行更新和加密,防止不法之徒窃取密码。 那些不再使用的用户应该被清除,权限越界的用户应该及时恢复权限,这可以通过更新用户表中的相应字段或者使用REVOKE操作来恢复。
以下是我从其他资料(www.cn-java.com)上获得的常用权限说明:
全局管理权限:
- FILE: 在MySQL云服务器上读写文件。
- PROCESS: 显示或杀死属于其它用户的服务线程。
- RELOAD: 重载访问控制表,刷新日志等。
- SHUTDOWN: 关闭MySQL服务。
数据库/数据表/数据列权限:
- ALTER: 修改已存在的数据表(例如增加/删除列)和索引。
- CREATE: 建立新的数据库或数据表。
- DELETE: 删除表的记录。
- DROP: 删除数据表或数据库。
- INDEX: 建立或删除索引。
- INSERT: 增加表的记录。
- SELECT: 显示/搜索表的记录。
- UPDATE: 修改表中已存在的记录。
特别的权限:
- ALL: 允许做任何事(和root一样)。
- USAGE: 只允许登录–其它什么也不允许做。
本文为原创文章,版权归三条八主机所有,欢迎分享本文,转载请保留出处!
内容反馈