mysql学习记录(一)
#打开MySQL服务
sudo service mysql start
#Ubuntu Linux 安装配置MySQL
#安装MySQL服务器,核心程序
sudo apt-get install mysql-server
#安装MySQL客户端
sudo apt-get install mysql-client
#验证是否安装并启动成功
sudo netstat -tap | grep mysql
#修改MySQL的配置文件(my.cnf)
sudo gedit /etc/mysql/my.cnf
#打开MySQL服务并使用root用户登录
sudo service mysql start
mysql -u root
#查看数据库
show databases;
#使用数据库:use <数据库名>
use information_schema
#查看表
show table;
#退出数据库
quit
exit
#新建数据库 CREATE DATABASE <数据库名字>;
CREATE DATABASE mysql_test;
#连接数据库 use <数据库名字>;
use mysql_test;
#新建数据表
CREATE TABLE 表的名字
(
列名1 数据类型(数据长度),
列名2 数据类型(数据长度),
列名3 数据类型(数据长度)
);
#插入数据
select from * from 表的名字 //查看表
insert into 表的名字 (列名1,列名2,列名3) values(值1,值2,值3);
#SQL的约束
#PRIMARY KEY主键, DEFAULT默认值, UNIQUE:唯一, FOREIGN KEY外键, NOTNULL非空
#导入数据库
source 数据库文件
#以下记录多次创建同一个表,实际应用会提示表已存在
#主键约束
create table employee(id int(10)primary key, name char(20));
#定义主键名
create table employee(constraint test_1 primary key (test_name));
#复合主键
create table employee(constraint test_2 primary key(test_num,proj,name));
#默认值约束 insert语句中没有给予值会被default填充
create table employee(people_num int(10) default '10');
#唯一约束 规定一张表中指定的一列的值必须不能有重复值
create table employee(unique (test)); //表中的test列是唯一的
#外键约束 确保数据的完整性同时表现出表之间的关系
create test_1 foregin key (test_2) references test_3(test_4)); //外键名字test_1,外键为test_2,参考列为表test3中的test_4列
#非空约束 被定义了非空约束的列插入值时必须非空
create table employee(people_num int(10) not null);
吾生也有涯,而知也无涯。