在这篇文章中,我们将带领您了解mysql之CREATEDATABASESyntax(创建数据库)的全貌,包括mysql创建新数据库怎么创建的相关情况。同时,我们还将为您介绍有关###MySQL数据库D
在这篇文章中,我们将带领您了解mysql之CREATE DATABASE Syntax(创建数据库)的全貌,包括mysql创建新数据库怎么创建的相关情况。同时,我们还将为您介绍有关###MySQL 数据库DataBase、5.13Mysql 数据库 Database、android – SQLiteDatabase.openDatabase vs SQLiteOpenHelper.getReadableDatabase、app.config['SQLALCHEMY_DATABASE_URI'] = f'sqlite:///{DB_NAME}' SyntaxError: Invalid Syntax的知识,以帮助您更好地理解这个主题。
本文目录一览:- mysql之CREATE DATABASE Syntax(创建数据库)(mysql创建新数据库怎么创建)
- ###MySQL 数据库DataBase
- 5.13Mysql 数据库 Database
- android – SQLiteDatabase.openDatabase vs SQLiteOpenHelper.getReadableDatabase
- app.config['SQLALCHEMY_DATABASE_URI'] = f'sqlite:///{DB_NAME}' SyntaxError: Invalid Syntax
mysql之CREATE DATABASE Syntax(创建数据库)(mysql创建新数据库怎么创建)
一:语法
create_specification:
<span>[<span>DEFAULT<span>] <span>CHaraCTER <span>SET <span>[<span>=<span>]<span> charset_name #指定字符集
<span>| <span>[<span>DEFAULT<span>] COLLATE <span>[<span>=<span>] collationname #specifies the default database collation (排序规则)例如:创建@R301_6250@并指定字符集 <span>create <span>database db2 <span>default character set=utf8
备注:@R_301_6250@的字符集存储在数据库目录下的db.opt文件中,我们可通过 find / -name db.opt 查找并用less 查看相关db.opt文件如下
二:关于 CHaraCTER SET 和 COLLATE
三:查看相关字符集
3.1 :查看MysqL@R_301_6250@服务器和@R_301_6250@字符集
3.2 :查看表的字符集(show table status from 库名 like 表名)
3.4 :查看表中所有列的字符集(show full columns from 表名;)
注意:数值型的列没有 collation特性
四:修改相关的字符集
4.1.创建时指定字符集
4.2修改相关字符集
<span>set collation_connection<span>=<span>utf8;
<span>set collation_database<span>=<span>utf8;
<span>set collation_server<span>=utf8;
4.3 修改库的字符集(alter database 库名 default character set 字符集;)
Query OK,<span>1 row affected (<span>0.00 sec)
4.4修改表字符集(alter table 表名 convert to character set 字符集;)
show create table test1\G *************************** 1. row *************************** Table: test1 Create Table: CREATE TABLE `test1` ( `id` int(6) DEFAULT NULL,`name` char(10) DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=gbk #原字符集 1 row in set (0.00 sec)MysqL> alter table test1 convert to character set utf8;
Query OK,0 rows affected (0.58 sec)
Records: 0 Duplicates: 0 Warnings: 0MysqL> show create table test1\G
1. row
Table: test1
Create Table: CREATE TABLEtest1
(
id
int(6) DEFAULT NULL,name
char(10) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8 #修改后的字符集
1 row in set (0.00 sec)
4.5修改字段的字符集(alter table 表名 modify 字段名 字段属性 character set gbk;)
五:案例分析
当我们不知道因和原因创建的一个表(teacher),当我们向表中插入数据是发生乱码如下
sql : INSERT INTO teacher(tid,class_id,NAME)VALUE(312,2,'小明');
###MySQL 数据库DataBase
###MySQL 数据库DataBase
1.持久化存储数据,其实数据库就是一个文件系统
2.方便存储和管理数据
3.使用了统一的方式操作数据库--sql
mysql -uroot -proot
卸载
必须卸载干净
找到安装目录中的my.ini 配置文件
datadir="c:/ProgramData/MySQL/MySQL Server 5.5/Data/"
卸载软件后
上述路径存放着数据文件,也要删除干净
查看服务---cmd右键以管理员身份打开cmd,
cmd ---services.msc
停止数据库---net stop mysql
启动--net start mysql mysql是服务名称,不一定一样
登录 mysql -uroot -proot
或者mysql -uroot -p回车输入密码
远程连接数据库-hip
mysql -h127.0.0.1 -uroot -p回车
退出exit
或者quit
2.2.7.22
DML-增删改表中数据
DQL-查询表中的记录‘select * from 表名;
1.语法:
select
字段列名
from
表名列表
where
条件列表
group by
分组字段
having
分组之后的条件
order by
排序
limit
分页限定
2.基础查询
== 查询 姓名 和 年龄
SELECT NAME,AGE FROM student;
== 去除重复的结果集
SELECT DISTINCT address FROM student;
== 计算math和english分数之和
SELECT NAME,math,english,math + english FROM student;
-- 如果有null 参与的运算,计算结果都为null
SELECT NAME,math,english,math + IFNULL(english,0) FROM student;
== 起别名
SELECT NAME,math,english,math + IFNULL(english,0) AS 总分 FROM student;
SELECT NAME,math 数学,english 英语,math + IFNULL(english,0) 总分 FROM student;
5.13Mysql 数据库 Database
数据库的基本概念
1. 什么是数据库:
用于存储和管理数据的仓库。
2. 数据库的特点:
1. 持久化存储数据的。其实数据库就是一个文件系统。
2. 方便存储和管理数据
3. 使用了统一的方式操作数据库 ---sql
MySQL 目录结构
1. 安装目录 basedir 配置文件 my.ini
2. 数据目录 datadir【数据库:文件夹 --- 表:文件 --- 数据:数据】
SQL:
1. 什么是 SQL:Structured Query Language:结构化查询语言。其实就是定义了操作关系型数据库的规则。每一种数据库操作的方式在不一样的地方,成为方言。
2.SQL 通用语法
1. SQL 语句可以单行或多行书写,以分号结尾。
2. 可使用空格和缩进来增强语句的可读性。
3. MySQL 数据库的 SQL 语句不区分大小写,关键字建议使用大写。
4. 3 种注释
* 单行注释: -- 注释内容 或 # 注释内容 (mysql 特有)
* 多行注释: /* 注释 */
3. SQL 分类
1) DDL (Data Definition Language) 数据定义语言
用来定义数据库对象:数据库,表,列等。关键字:create, drop,alter 等
2) DML (Data Manipulation Language) 数据操作语言
用来对数据库中表的数据进行增删改。关键字:insert, delete, update 等
3) DQL (Data Query Language) 数据查询语言 - 用来查询数据库中表的记录 (数据)。关键字:select, where 等
4) DCL (Data Control Language) 数据控制语言 (了解)
用来定义数据库的访问权限和安全级别,及创建用户。关键字:GRANT,REVOKE 等
DDL
1. 操作数据库 CRUD
C(create)创建:【create database 数据库名】【create database if not exists 数据库名称】【create database 数据库名称 character set 字符集名】【create database if not exists db4 character set gbk】
R (Reterieve) 查询【show databases】【show create database 数据库名称】
U (Update) 修改【alter database 数据库名称 charcter set 字符集名称】
D (Delete 删除)【drop database 数据库名称】【drop database if exists 数据库名称】
- 使用数据库【select database ()】【use 数据库名称】
2. 操作表
C (create) 创建
语法:create table 表名 (age int ,score double(5,2)列明 1 数据类型 1,列明 2 数据类型 2.。。。);
* 注意:最后一列,不需要加逗号(,)
* 数据库类型:
1. int:整数类型
* age int,
2. double: 小数类型
* score double(5,2)
3. date: 日期,只包含年月日,yyyy-MM-dd
4. datetime: 日期,包含年月日时分秒 yyyy-MM-dd HH:mm:ss
5. timestamp: 时间错类型 包含年月日时分秒 yyyy-MM-dd HH:mm:ss
* 如果将来不给这个字段赋值,或赋值为 null,则默认使用当前的系统时间,来自动赋值
6. varchar:字符串
* name varchar (20): 姓名最大 20 个字符
* zhangsan 8 个字符 张三 2 个字符
创建表 create table student (id int,name varchar (32),age int,score double (4,1),birthday date,insert_time timestamp);
复制表:create table 表名 like 被复制的表名;
show tables; 查询某个数据库中所有的表名称。show 表名;查询表结构。
android – SQLiteDatabase.openDatabase vs SQLiteOpenHelper.getReadableDatabase
我应该使用哪种方法?基于我见过的示例代码,我首先使用sqliteOpenHelper创建数据库,但在需要使用数据库时调用sqliteDatabase.openDatabase.
解决方法
app.config['SQLALCHEMY_DATABASE_URI'] = f'sqlite:///{DB_NAME}' SyntaxError: Invalid Syntax
如何解决app.config[''SQLALCHEMY_DATABASE_URI''] = f''sqlite:///{DB_NAME}'' SyntaxError: Invalid Syntax?
from flask import Flask
from flask_sqlalchemy import sqlAlchemy
from os import path
from flask_login import LoginManager
db = sqlAlchemy()
DB_NAME = "database.db"
def create_app():
app = Flask(__name__)
app.config[''SECRET_KEY''] = "YouDontGetTheKey"
app.config[''sqlALCHEMY_DATABASE_URI''] = f''sqlite:///{DB_NAME}''
db.init_app(app)
from .views import views
from .auth import auth
app.register_blueprint(views,url_prefix="/")
app.register_blueprint(auth,url_prefix="/")
from .models import User,Post,Comment,Like
create_database(app)
login_manager = LoginManager()
login_manager.login_view = "auth.login"
login_manager.init_app(app)
@login_manager.user_loader
def load_user(id):
return User.query.get(int(id))
return app
def create_database(app):
if not path.exists("website/" + DB_NAME):
db.create_all(app=app)
print("Created database!")
我在第 13 行遇到语法错误:
app.config[''sqlALCHEMY_DATABASE_URI''] = f''sqlite:///{DB_NAME}''
它在最后一个'',我不知道如何解决这个问题
(这是来自 TechWithTim 教程)我查看了我的代码并将该行与 og 进行了比较,它适用于 TechWithTim 但不适用于我。我正在使用 glitch.com 网站,所以我不知道是该网站还是我的代码中的错误
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)
今天关于mysql之CREATE DATABASE Syntax(创建数据库)和mysql创建新数据库怎么创建的讲解已经结束,谢谢您的阅读,如果想了解更多关于###MySQL 数据库DataBase、5.13Mysql 数据库 Database、android – SQLiteDatabase.openDatabase vs SQLiteOpenHelper.getReadableDatabase、app.config['SQLALCHEMY_DATABASE_URI'] = f'sqlite:///{DB_NAME}' SyntaxError: Invalid Syntax的相关知识,请在本站搜索。
本文标签: