2K+ 阅读量
非字母数字字符如下:@、!、#、&、()、?、/ MySQL 中没有内置函数可以从字符串中删除非字母数字字符。因此,我们创建了一个函数来删除所有非字母数字字符。函数声明和定义如下。 mysql> delimiter // mysql> CREATE FUNCTION RemoveNonAlphaNumeric( s CHAR(255) ) RETURNS CHAR(255) DETERMINISTIC -> BEGIN -> DECLARE var1, length SMALLINT DEFAULT 1; -> DECLARE result CHAR(255) DEFAULT ''; -> DECLARE ch CHAR(1); ... 阅读更多
在我们的示例中,我们将创建两个表并应用自然左连接来获取不在第二个表中的表中的行。创建第一个表。 mysql> create table FirstTableDemo -> ( -> id int, -> name varchar(100) -> ); Query OK, 0 rows affected (0.48 sec) 将记录插入第一个表。 mysql> insert into FirstTableDemo values(1, 'Bob'), (2, 'John'), (3, 'Carol'); Query OK, 3 rows affected (0.13 sec) Records: 3 Duplicates: 0 Warnings: 0 要显示所有 ... 阅读更多
32K+ 阅读量
MySQL 使用 AUTO_INCREMENT 关键字执行自增。AUTO_INCREMENT 的起始值为 1,这是默认值。对于每条新记录,它将递增 1。要在 MySQL 中获取下一个自增 ID,我们可以使用 MySQL 中的 last_insert_id() 函数或使用 SELECT 获取 auto_increment。创建一个表,其中“d”为自增。 mysql> create table NextIdDemo -> ( -> id int auto_increment, -> primary key(id) -> ); Query OK, 0 rows affected (1.31 sec) 将记录插入表中。 mysql> insert into NextIdDemo ... 阅读更多
282 阅读量
我们可以借助“枚举”来实现枚举的可能值。以下是语法。 yourColumnName ENUM(value1, value2, ........................N) 让我们首先创建一个表。 mysql> create table EnumDemo -> ( -> Light int, -> IsONOrOff ENUM('ON', 'OFF') -> ); Query OK, 0 rows affected (1.06 sec) 在上表中,ENUM 用于获取“Light”的可能值。插入记录。 mysql> insert into EnumDemo values(1, 'ON'), (0, 'OFF'); Query OK, 2 rows affected (0.24 sec) Records: 2 Duplicates: ... 阅读更多
我们可以使用 LEAVE 命令退出/退出 MySQL 存储过程。以下是语法。 Leave yourLabelName; 以下是一个示例。在这里,我们正在创建一个新的过程。 mysql> delimiter // mysql> CREATE PROCEDURE ExitQuitDemo2(IN Var1 VARCHAR(20)) -> proc_Exit:BEGIN -> IF Var1 IS NULL THEN -> LEAVE proc_Exit; -> END IF; -> END // Query OK, 0 rows affected (0.16 sec) 上面,我们设置了以下 LEAVE 命令来退出过程。如果 ... 阅读更多
我们可以使用 UPDATE 命令恢复 MySQL root 用户的完全权限。首先,您需要停止 mysqld 并使用 --skip-grant-tables 选项重新启动它。之后,仅使用 mysql 连接到 mysqld 服务器(即没有 -p 选项,并且可能不需要用户名)。在 mysql 客户端中发出以下命令以使用完全权限恢复 MySQL root 用户。 mysql> UPDATE mysql.user SET Grant_priv = 'Y', Super_priv = 'Y' WHERE User = 'root'; Query OK, 0 rows affected (0.04 sec) Rows matched: 1 Changed: 0 Warnings: 0 上面, ... 阅读更多
283 阅读量
MySQL 表的修复仅适用于 MyISAM 引擎类型,不适用于 InnoDB。因此,我们需要将引擎类型更改为 MyISAM。以下是一个示例。创建表 mysql> create table RepairTableDemo -> ( -> id int, -> name varchar(100) -> ); Query OK, 0 rows affected (0.51 sec) 要将此表转换为引擎类型 MyISAM,请使用 ALTER。 mysql> ALTER TABLE RepairTableDemo ENGINE = MyISAM; Query OK, 0 rows affected (1.14 sec) Records: 0 Duplicates: 0 Warnings: ... 阅读更多
6K+ 阅读量
Union 是 MySQL 中的一种运算符。我们可以使用 ORDER BY 对其进行过滤记录。如果要将多个表或单个表中的多个行集中的行一个接一个地选择为单个结果集,请使用 UNION。让我们看一个例子。创建第一个表 mysql> create table UnionDemo1 -> ( -> id int -> ); Query OK, 0 rows affected (0.59 sec) 将记录插入第一个表。 mysql> insert into UnionDemo1 values(1), (4), (10); Query OK, ... 阅读更多
要创建以“false”作为默认值的列,我们可以在创建表时使用“default”的概念。注意 - 0 表示 false,1 表示 true。使用“default”false 创建表。 mysql> create table TrueFalseTable -> ( -> Adult boolean default false -> ); Query OK, 0 rows affected (0.65 sec) 插入没有值的记录,因为我们在上面设置了“default”。 mysql> insert into TrueFalseTable values(); Query OK, 1 row affected (0.16 sec) 要显示记录。 ... 阅读更多
35K+ 阅读量
要统计表的总数,请将 count(*) 与 table_schema 结合使用。首先,要检查我们的数据库“business”中存在多少个表,我们需要使用“show”命令。 mysql> show tables; 以下是显示数据库“business”中所有表的输出。 +--------------------------+ | Tables_in_business | +--------------------------+ | addcheckconstraintdemo | | addcolumntable | | addconstraintdemo | | addnotnulldemo ... 阅读更多