-
MySQL创建数据库和创建数据表
2019-10-20 23:44:40MySQL 创建数据库和创建数据表 MySQL 是最常用的数据库,在数据库操作中,基本都是增删改查操作,简称CRUD。 在这之前,需要先安装好 MySQL ,然后创建好数据库、数据表、操作用户。 一、数据库操作语言 数据库...MySQL 创建数据库和创建数据表
MySQL 是最常用的数据库,在数据库操作中,基本都是增删改查操作,简称CRUD。
在这之前,需要先安装好 MySQL ,然后创建好数据库、数据表、操作用户。
一、数据库操作语言
数据库在操作时,需要使用专门的数据库操作规则和语法,这个语法就是 SQL(Structured Query Language) 结构化查询语言。
SQL 的主要功能是和数据库建立连接,进行增删改查的操作。SQL是关系型数据库管理系统的标准语言。
SQL 语言的作用:
1. 数据定义语言 DDL(Data Definition Language) 。用于创建数据库,数据表。
2. 数据操作语言 DML(Data Manipulation Language) 。用于从数据表中插入、修改、删除数据。
3. 数据查询语言 DQL(Data Query Language) 。用于从数据表中查询数据。
4. 数据控制语言 DCL(Data Control Language) 。用来设置或修改数据库用户或角色的权限。
使用 SQL 操作数据库时,所有的 SQL 语句都以分号结束。(切换数据库时可以不用分号)
在 SQL 语句中,不区分大小写,编写 SQL 语句时可以根据情况用大小写的区别来增加可读性。
二、创建数据库
1. 连接 MySQL
输入 mysql -u root -p 命令,回车,然后输入 MySQL 的密码(不要忘记了密码),再回车,就连接上 MySQL 了。
mysql -u root -p
最初,都是使用 root 用户登录,工作中如果一直用 root 用户登录,因为权限太大,风险是很大的,所以等创建好权限适合的用户后,就不要经常登录 root 用户了。
2. 查看当前的数据库
使用 show databases; 查看当前安装的 MySQL 中有哪些数据库。
show databases;
刚安装 MySQL 时,默认有四个数据库,information_schema,mysql,perfomance_schema,sys 。通常情况下,我们不会直接使用这四个数据库,但千万不要把这四个数据库删了,否则会带来很多不必要的麻烦。如果不小心删了,建议是重新安装 MySQL ,在重装之前把自己的数据迁移出来备份好,或者从其他服务器上迁移一个相同的数据库过来。
3. 创建数据库
使用 create database 数据库名; 创建数据库。
create database MyDB_one;
创建数据库成功后,数据库的数量变成了5个,多了刚才创建的 MyDB_one 。
4. 创建数据库时设置字符编码
使用 create database 数据库名 character set utf8; 创建数据库并设置数据库的字符编码。
create database MyDB_two character set utf8;
直接创建的数据库,数据库的编码方式是 MySQL 默认的编码方式 latin1 (单字节编码) ,通常我们会在数据库中存放中文数据,所以最好把数据库的编码方式设置成 utf-8 ,这样中文才能正常显示。
create database MyDB_three charset utf8;
character set 可以缩写成 charset ,效果是一样的。
5. 查看和显示数据库的编码方式
使用 show create database 数据库名; 显示数据库的创建信息。
show create database MyDB_one; show create database MyDB_two;
如果不知道一个数据库的编码方式是什么,可以使用 show create database 数据库名 来查看数据库的编码方式。可以看到刚才创建的 MyDB_one 的编码方式是 MySQL 的默认编码 latin1 ,MyDB_two 的编码方式是 utf-8 。
当然,这种方式不能在创建的同时显示,只能查看一个已经存在的数据库的编码方式。
6. 使用 alter database 数据库名 character set utf8; 修改数据库编码
alter database MyDB_one character set utf8;
如果一个数据库的编码方式不符合使用需求,可以进行修改。刚才创建的 MyDB_one 经过修改后,编码方式也变成了 utf-8 。
7. 进入或切换数据库
使用 use 数据库名 进入或切换数据库。
use MyDB_one use MyDB_two;
刚连接上 MySQL 时,没有处于任何一个数据库中,如果要使用某一个数据库,就需要进入到这个数据库中。
use 数据库名 这个命令后面的分号可以省略,这是 SQL 语句中唯一可以省略分号的语句。
8. 显示当前数据库 select database();
select database();
进入数据库中,可以使用 select database(); 来查看当前处于哪个数据库中。长时间操作数据库时,在很多数据库中来回切换后,查看当前的数据库,避免操作错了数据库。
三、创建数据表
1. 查看当前数据库中的表
使用 show tables;查看当前数据库中有哪些表。
show tables;
在刚才创建的数据库 MyDB_one 中,还没有创建任何表,所以当前是空的。
2. 创建表
使用 create table 表名(字段1 字段类型,字段2 字段类型,字段3 字段类型,…); 来创建一张表。
create table Phone_table(pid INT, name CHAR(20), price INT);
在 MyDB_one 中创建了一个叫 Phone_table 的数据表,这张表有三个字段 pid,name,price 。为了增加 SQL 的可读性,字段名我用的是小写,字段类型用大写。
3. 显示表信息
用 show create table 表名; 来显示已创建的表的信息。
show create table Phone_table;
使用 show create table 表名; 可以显示表的字段信息, MySQL 的引擎,和默认的字符编码等信息。与显示数据库信息一样,show 只能显示已经创建了的数据表的信息,不能在创建的同时显示信息。
如果想更好地展示表的字段信息,可以使用 desc 表名; 来显示表的字段信息。
4. 给表增加字段
使用 alter table 表名 add 字段名 数据类型; 为已存在的表添加一个新字段。
alter table Phone_table add color CHAR(20);
添加后,刚才的表中多了一个字段,新增成功。
5. 删除表的字段
使用 alter table 表名 drop 字段名; 删除一个表中已存在的字段。
alter table Phone_table drop price;
删除字段后,表中不再有该字段。
6. 修改字段的数据类型
使用 alter table 表名 modify 字段名 数据类型; 修改表中现有字段的数据类型。
alter table Phone_table modify name VARCHAR(12);
修改之后,该字段的数据类型发生改变。
7. 修改字段的数据类型并且改名
使用 alter table 表名 change 原字段名 新字段名 数据类型; 修改表中现有字段的字段名和类型。
alter table Phone_table change name pname CHAR(18);
现在,将表的 name 改成了 pname ,同时修改了 pname 的数据类型。
四、MySQL 常用字段类型
一个数据表是由若干个字段组成的,一个表十几个字段也很正常,每个字段表示不同的信息,需要使用不同类型的数据。
所以在创建表的时候,要为每个字段指定适合的数据类型。
MySQL 中常用的字段类型有以下这些:
1. 整数类型
数据类型 数据范围 TINYINT -128 -- 127 SMALLINT -32768 -- 32767 MEDIUMINT -2^23 -- 2^23-1 INT -2^31 -- 2^31-1 BIGINT -2^63 -- 2^63-1 2. 字符串类型
数据类型 字节范围 用途 CHAR(n) 0 -- 255字节 定长字符串 VARCHAR(n) 0 -- 65535字节 变长字符串 TEXT 0 -- 65535字节 长文本数据 LONGTEXT 0 -- 2^32-1字节 极大文本数据 BLOB 0 -- 65535字节 二进制长文本数据 LONGBLOB 0 -- 2^32-1字节 二进制极大文本数据 3. 小数类型
m 表示浮点数的总长度,n 表示小数点后有效位数。
数据类型 数据用法 数据范围 Float Float(m,n) 7位有效数 Double Double(m,n) 15位有效数 Decimal Decimal(m,n) 28位有效数 4. 时间类型
数据类型 格式 用途 DATE YYYY-MM-DD 日期 TIME HH:MM:SS 时间 YEAR YYYY 年份 DATETIME YYYY-MM-DD HH:MM:SS 日期和时间 TIMESTAMP 10位或13位整数(秒数) 时间戳 5. 枚举类型
enum(枚举值1,枚举值2,...)
枚举类型只能在列出的值中选择一个,如性别。
-
django创建数据表
2019-06-01 16:14:37创建数据表需要在models.py文件下,每一张表对应一个类。django的model模块与数据库形成对应关系映射(简称:ORM),创建的表上传到数据库。 接下来还要进行数据迁移,首先生成迁移文件 打开虚拟环境,找到我们的...创建数据表需要在models.py文件下,每一张表对应一个类。django的model模块与数据库形成对应关系映射(简称:ORM),创建的表上传到数据库。
接下来还要进行数据迁移,首先生成迁移文件
打开虚拟环境,找到我们的项目文件执行python manage.py makemigrations命令即可生成数据迁移文件。
pycharm打开项目文件,migrations文件夹下就是生成的迁移文件,然后还要执行文件迁移
执行之后数据表就会在django自带的SQLite数据库创建,我们应该如何查看这张表。首先将生成的表注册到admin.py文件,然后运行我们的项目文件,在浏览器打开网页
;
以下例子中我们将在 RUNOOB 数据库中创建数据表runoob_tbl:
CREATE TABLE IF NOT EXISTS `runoob_tbl`( `runoob_id` INT UNSIGNED AUTO_INCREMENT, `runoob_title` VARCHAR(100) NOT NULL, `runoob_author` VARCHAR(40) NOT NULL, `submission_date` DATE, PRIMARY KEY ( `runoob_id` ) )ENGINE=InnoDB DEFAULT CHARSET=utf8;
实例解析:
- 如果你不想字段为 NULL 可以设置字段的属性为 NOT NULL, 在操作数据库时如果输入该字段的数据为NULL ,就会报错。
- AUTO_INCREMENT定义列为自增的属性,一般用于主键,数值会自动加1。
- PRIMARY KEY关键字用于定义列为主键。 您可以使用多列来定义主键,列间以逗号分隔。
-
ENGINE 设置存储无限娱乐注册引擎,CHARSET 设置编码。
通过命令提示符创建表
通过 mysql> 命令窗口可以很简单的创建MySQL数据表。你可以使用 SQL 语句 CREATE TABLE 来创建数据表。
实例
以下为创建数据表 runoob_tbl 实例:
root@host# mysql -u root -p Enter password:******* mysql> use RUNOOB; Database changed mysql> CREATE TABLE runoob_tbl( -> runoob_id INT NOT NULL AUTO_INCREMENT, -> runoob_title VARCHAR(100) NOT NULL, -> runoob_author VARCHAR(40) NOT NULL, -> submission_date DATE, -> PRIMARY KEY ( runoob_id ) -> )ENGINE=InnoDB DEFAULT CHARSET=utf8; Query OK, 0 rows affected (0.16 sec) mysql>
注意:MySQL命令终止符为分号 (;) 。
使用PHP脚本创建数据表
你可以使用 PHP 的 mysqli_query() 函数来创建已存在数据库的数据表。
该函数有两个参数,在执行成功时返回 TRUE,否则返回 FALSE。
语法
mysqli_query(connection,query,resultmode);
参数 描述 connection 必需。规定要使用的 MySQL 连接。 query 必需,规定查询字符串。 resultmode 可选。一个常量。可以是下列值中的任意一个:
- MYSQLI_USE_RESULT(如果需要检索大量数据,请使用这个)
- MYSQLI_STORE_RESULT(默认)
实例
以下实例使用了PHP脚本来创建数据表:
创建数据表
$dbhost = 'localhost:3306';// mysql服务器主机地址$dbuser = 'root';// mysql用户名$dbpass = '123456';// mysql用户名密码$conn = mysqli_connect($dbhost,$dbuser,$dbpass);if(!$conn){die('连接失败:' .mysqli_error($conn));}echo'连接成功<br />';$sql = "CREATE TABLE runoob_tbl("."runoob_id INT NOT NULL AUTO_INCREMENT,"."runoob_title VARCHAR(100) NOT NULL,"."runoob_author VARCHAR(40) NOT NULL,"."submission_date DATE,"."PRIMARY KEY ( runoob_id ))ENGINE=InnoDB DEFAULT CHARSET=utf8;";mysqli_select_db($conn,'RUNOOB');$retval = mysqli_query($conn,$sql);if(!$retval){die('数据表创建失败:' .mysqli_error($conn));}echo"数据表创建成功\n";mysqli_close($conn);执行成功后,就可以通过命令行查看表结构:
-
oracle中快速复制数据表(创建数据表)
2017-07-07 23:20:23oracle中快速复制数据表(创建数据表) 1.普通创建表方式 2.快速创建表方式根据已存在的表,快速创建表1.普通创建表方式如下:
create table emp(empno number(4) primary key,ename varchar2(20),sal number(7,2));
2.快速创建表方式
根据已存在的表,快速创建表,如下
create table a_emp as select * from emp; create table a_dept as select * from dept;
该方式特点:
只能复制表中的数据(字段名,字段类型,字段对应的数据)
不能复制约束(主键,外键等等),需要单独添加主外键
-
Django创建数据表
2017-08-08 21:50:42Django创建数据表 Django中,我们使用models来定义表,并且尽量不要跳过Django手动操作数据表。 在旧版本中用sqlall来查看Django会执行的SQL语句,新版本中sqlmigrate是最接近sqlall功能的,但并不等价。 -
thinkphp5 创建数据表
2019-03-25 12:06:11场景描述: 如果需要分表1000个,也不能马上创建1000张表,监听另一张表的数据是否有新的数据增减,如果有增加,我们就要自动去创建相应的... //创建数据表 $sql = <<<sql CREATE TABLE IF NOT EXISTS ... -
mysql创建数据库,创建数据表,并且插入数据
2020-03-13 23:36:591.创创建数据库 create database python_test_1 charset=utf8; ...3.创建数据表students,classes mysql> create table students( -> id int unsigned primary key auto_increment not ... -
MySQL从其他数据表或者查询结果中创建数据表
2016-05-17 10:25:15MySQL从其他数据表或者查询结果中创建数据表 -
MySQL Navicat Premium创建数据表
2017-08-20 20:01:572、admin数据连接已经创建成功。...3、为数据库添加数据表,这里是通过数据表的创建语句自动创建数据表。先到工程目录下找到创建数据表的SQL语句。 4、在Navicat Premium选中刚才创建的数据库,选 -
MySQL——在创建数据表时创建索引
2018-05-15 18:53:58在建立数据表时创建索引 在创建数据表时创建索引的基本语法结构: CREATE TABLE table_name( 属性名 数据类型[约束条件], …… 属性名 数据类型 [UNIQUE | FULLTEXT | SPATIAL ] INDEX | KEY ... -
使用laravel的migrate创建数据表
2018-07-31 14:58:31laravel中可以使用migration创建数据表,这使得数据库的迁移非常便利,下面介绍一下laravel中使用migration创建数据表的过程。数据库使用的是mysql,laravel版本为5.5 1. 创建并连接数据库 创建数据库 在命令行... -
MySQL教程(8)创建数据表
2018-04-04 14:21:39MySQL 创建数据表 创建MySQL数据表需要以下信息: 表名 表字段名 定义每个表字段 语法 以下为创建MySQL数据表的SQL通用语法: CREATE TABLE table_name (column_name column_type);(column_name column_type)... -
c# -- 创建数据表
2017-04-19 16:40:22https://technet.microsoft.com/zh-cn/library/ms187752(v=sql.110).aspx创建数据表这时数据表已经建好,但没有数据手动输入几条测试返回脚本页查询批处理语句:GO是批处理的标志,表示SQL server将这些SQL语句编译为... -
django创建数据表同步
2016-02-18 13:49:27django1.7之前的版本都是:python manage.py syncdb django1.7及之后的版本做了修改,把1步拆成了2步,变成: python manage.py makemigrations ... makemigrations 文件夹,就能够是 manage.py syncdb创建数据表了 -
2019access创建数据表、查询和窗体
2019-10-25 13:59:142019 access创建数据表、查询和窗体 打开access,在菜单栏选择创建,我们可以看到有 “表格” 、“查询”、“窗体”等模块,我们可以通过这些按钮来进行表的创建、查询设计、窗体的创建。 图一图一图一 1.创建表 1... -
Python 连接Mysql数据库并创建数据表、插入数据
2019-07-15 14:15:22Python 连接本地数据库并创建数据表、插入数据,亦可访问远程数据库 远程访问指定IP上的数据库建立连接代码为:db = pymysql.connect(“10.180.8.33”,“root”,“root123”, “picdetectdb”) #-*-coding: UTF-8 ... -
用SQL语言创建数据表
2013-11-19 12:39:11用SQL语言创建数据表 (1)创建学生表student create table student ( sno char(8),sname char(20),ssex char(2),sdept char(20),sage smallint); (2)创建课程表course create table course ( cno char(3),cname char... -
MySQL创建数据表时设定引擎MyISAM/InnoDB
2016-08-06 16:43:59MySQL创建数据表时设定引擎MyISAM/InnoDB -
MySQL命令create table:创建数据表
2016-11-23 13:47:49create table命令用来创建数据表。 create table命令格式:create table ( [,.. ]); 例如,建立一个名为MyClass的表: 字段名 数字类型 数据宽度 是否为空 是否主键 自动增加 ... -
创建数据表并为已创建的表添加约束
2018-06-16 18:22:21/*初始化两张表,测试添加约束语句*/use E_Marketgo--创建部门表if exists(select * from sysobjects where name = 'department')drop table departmentcreate table department --部门表( DepartmentId char(5) not... -
Mysql-基本练习(04-打开数据库、查看已打开数据库、创建数据表、查看数据表、查看表结构)
2018-05-11 16:51:06有任何问题加群讨论,还可以领取精美学习资料噢~ 群号:733899823 加群时请备注CSDN~ 1.打开已存在的数据库 语法:USE db_name;...3.创建数据表 语法:CREATE TABLE [IF NOT EXISTS] table_name(co... -
MySQL学习笔记_2_MySQL创建数据表(上)
2014-01-22 14:10:26MySQL创建数据表(上) 一、创建数据表的SQL语句模型【弱类型】 CREATE TABLE [IF NOT EXISTS] 表名称( 字段名1 列的类型 [属性][索引], 字段名2 列的类型 [属性][索引], … 字段名n 列的类型 [属性]... -
Seal Report使用教程(四)——创建数据表
2017-08-24 15:51:25十几天没有写了,唉!懒惰是人的天性啊~今天突然有人问我问题,让我继续写;这不,我又打起精神来写开了,哈哈 上一节我们了解了如何连接数据库...当然是通过写SQL语句来创建数据表啦。细心的读者可能会发现在SealS -
使用ERStudio6创建数据表ER图并导出数据表的SQL(DDL)语句
2013-03-01 08:39:221.创建数据表实体 打开ERStudio软件,其界面如下: 点击File菜单的NEW或则使用快捷键“Ctrl+N”着按钮 来新建一个ER图文件,按下OK按钮即可打开一个空白的ER图文件 其后缀是.DM1类型的。新建一个ER文件后,ER... -
pandas创建数据表及数据读写
2018-06-02 15:13:39读取Excel数据#读取excel数据 import pandas as pd FileReadPath = r"D:\AI\Others\test.xlsx" df = pd.read_excel(FileReadPath) df.head()写Excel数据#把数据写入Excel FileWritePath = r"D:\AI\... -
python连接SQLServer数据库创建数据表同时为每个字段加上对应的中文注释信息
2018-09-20 19:46:38今天应产品那边的需求更改,需要在原始的创建数据表的脚本中加入注释这一项,SQLServer数据库其实我是很不熟的,这一段时间完全是因为项目的缘故才会比较多的接触到这一块内容,学习一下觉得挺好的。之前的创建表的... -
使用ERStudio创建数据表与ER图
2013-10-30 09:55:431.创建数据表实体 打开ERStudio软件,其界面如下: 点击File菜单的NEW或则使用快捷键“Ctrl+N”着按钮来新建一个ER图文件,按下OK按钮即可打开一个空白的ER图文件 其后缀是.DM1类型的。新建一个ER... -
springboot项目启动-自动创建数据表
2019-07-15 17:13:00很多时候,我们部署一个项目的时候,需要创建大量的数据表。例如mysql,一般的方法就是通过source命令完成数据表的移植,如:source /root/test.sql。如果我们需要一个项目启动后,就自动创建所需要的数据表,那么... -
laravel 利用migrate 创建数据表
2018-06-07 16:38:281.创建一个migratephp artisan make:migration create_...编写migrate创建表Schema::create('anke', function (Blueprint $table) { $table->increments('id'); $table->string('name', 20); $tab...
-
Excel高级图表技巧
-
efficientnet_lite0_fp32_2.tflite
-
项目性能优化 (总结)
-
YD5059-2005 电信设备安装抗震设计规范.pdf
-
npm install
-
thinkphp5.1博客后台实战视频
-
Pygame详解(四):event 模块
-
苹果网址一键免签绿标打包工具1.3.0
-
Mysql1整理.pdf
-
qt4.8_mysql数据库驱动
-
Sweet Snippet 之 Lua readonly table
-
vivado 的IDELAYE2的动态配置
-
Cocos Creator游戏开发-连连看 (接入腾讯优量汇广告)
-
酒店客房管理系统的设计与实现_SSH_毕业设计.rar
-
【2021】UI自动化测试Selenium3
-
python数据分析基础
-
【数据分析-随到随学】互联网行业业务指标及行业数
-
ML Visuals画图工具模板 dair.ai出品.zip
-
day1-总结
-
C++ 基础知识总结_终稿_124.pdf