-
我们知道ROLLBACK将恢复事务开始后对数据库所做的任何更改。要在MySQL存储过程中执行ROLLBACK,我们必须声明EXIT处理程序。我们可以使用sqlException或SQL警告的处理程序。可以借助一个示例来理解,其中为具有以下详细信息的表创建了ROLLBACK的存储过程-mysql>SHOWCREATEtablegg\G***************************1.row*************************** Ta
-
从这两个功能的工作原理来看,我们可以说两者是相辅相成的。实际上,我们知道,FIELD()函数在提供字符串作为参数时,从字符串列表中返回字符串的索引号,而ELT()函数在提供索引号作为参数时,从字符串列表中返回字符串。在下面的示例中,我们在同一个字符串上应用了这两个函数,它将演示这个概念-示例mysql>SELECTELT(4,'Ram','is','good','boy')AsResult;+--------+|Result|+----
-
我们知道,借助SHOWDATABASES语句,我们可以看到MySQL数据库的列表。同样,我们可以使用SHOWSCHEMAS作为SHOWDATABASES的同义词来获取数据库列表。示例mysql>SHOWDATABASES;+--------------------+|Database |+--------------------+|information_schema||gaurav
-
AsweknowthataPRIMARYKEYcolumnmusthaveuniquevaluesandcannothavenullvalueshenceifwewilldefineacolumnwithUNIQUEandNOTNULLconstraintboththenthatcolumnwouldbecomePRIMARYKEYcolumn.ExampleInthisexample,wehavecreatedatable‘Student123’bydefiningcolumn&
-
MySQL表的列名可以与SPACE()函数一起使用,在两列之间、指定列之后或之前添加空格。下面以“Student”表的数据为例进行演示。示例mysql>SelectId,Space(8),NamefromStudent;+------+----------+---------+|Id |Space(8)|Name |+------+----------+---------+|1 | |Ga
-
我们可以使用COMMIT命令将在当前事务中进行的更改永久记录在MySQL数据库中。假设我们运行了一些DML语句并更新了一些数据对象,那么COMMIT命令将会在数据库中永久记录这些更新。示例mysql>STARTTRANSACTION;QueryOK,0rowsaffected(0.00sec)mysql>INSERTINTOMarksValues(1,'Aarav','Maths',50);QueryOK,1rowaffected(0.00sec)mysql&g
-
我们可以通过使用DROP关键字和ALTERTABLE语句从现有表的多个列中删除复合PRIMARYKEY约束。示例假设我们有一个表“Room_allotment”,在“ID”和“RoomNo”列上具有复合主键约束,如下-mysql>describeroom_allotment;+--------+-------------+------+-----+---------+-------+|Field |Type |Null|Key|Default|
-
使用左连接连接两个表时,引入了左表和右表的概念,并且还需要连接谓词。它返回左表中的所有行,包括满足连接谓词的行以及不满足连接谓词的行。对于与join-predicate不匹配的行,结果集中右表的列中会出现NULL。为了理解它,我们以名为tbl_1和tbl_2的两个表为例,它们具有以下数据-mysql>Select*fromtbl_1;+----+--------+|Id|Name |+----+--------+|1 |Gaurav||2 |Rahul ||3
-
以下是使用MySQL游标的不同步骤-DECLARATION-首先我们必须使用DECLARE语句来声明游标。游标声明必须位于变量声明之后。声明MySQL游标的语法如下-DECLAREcursor_nameCURSORFORSELECT-statement;OPENING-接下来,我们需要打开游标,它可以通过OPEN语句打开。实际上,OPEN语句初始化游标的结果集,因此我们必须在从结果集中获取行之前调用OPEN语句。打开MySQL游标的语法如下-OPENcursor_name;FETCHINGtherows-
-
如果'len'不在字符串其余部分的长度内,则MySQLINSERT()函数将继续删除字符,直到字符串结束原始字符串。示例mysql>SelectINSERT('myteststring',3,15,'name');+------------------------------------+|INSERT('myteststring',3,15,'name')|+------------------------------------+|
-
当我们在行比较中使用NULL-safe运算符,如(A,B)<=>(C,D),其性能等同于(A<=>C)AND(B<=>D)。以下示例将加以说明−mysql>Select(100,50)<=>(50,100);+-----------------------+|(100,50)<=>(50,100)|+-----------------------+| &nbs
-
众所周知,NOTLIKE运算符与WILDCARD字符一起使用,用于不获取具有指定字符串的字符串。基本上,通配符是帮助搜索匹配复杂条件的数据的字符。以下是可与NOTLIKE运算符结合使用的通配符类型:%-百分比“%”通配符用于指定0、1模式或更多字符。将%通配符与NOTLIKE运算符一起使用的基本语法如下:SelectStatement…Wherecolumn_nameNOTLIKE‘X%’这里 X是任何指定的起始模式,例如more和%的单个字符匹配从0开始的任意数量的
-
最终,我们无法使用带有DROP关键字的ALTERTABLE命令从表中删除所有列。在这种情况下,MySQL将返回错误信息。借助以下示例进行演示假设在表“Employee”中我们有两列“name”和“id”,现在如果我们使用ALTERTABLE删除这两列,那么MySQL将返回错误如下mysql>ALTERTABLEemployeedropcolumnname,dropcolumnid;ERROR1090(42000):Youcan'tdeleteallcolumnswithALTERTABLE;
-
正如我们所知,AUTO_INCREMENT列必须也有PRIMARYKEY约束,因此当我们尝试从AUTO_INCREMENT列中删除PRIMARYKEY约束时,MySQL会返回关于不正确的表定义的错误消息。下面的示例将演示它−示例假设我们有一个名为“Accounts”的表,具有以下描述−mysql>Describeaccounts;+--------+-------------+------+-----+---------+----------------+|Field&nbs
-
在这种情况下,MySQLINTERVAL()函数返回参数列表中最后一个数字的索引号加1。换句话说,列表中最后一个索引号加1将返回这个功能。下面的例子将演示它-mysql>SelectINTERVAL(50,20,32,38,40);+--------------------------+|INTERVAL(50,20,32,38,40)|+--------------------------+|4 &nbs