MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

ステートメントの準備にはどのような種類のSQLステートメントを使用できますか?


実際、MySQLでは準備できる次の種類のSQLステートメントしか許可されていないため、すべてのSQLステートメントを準備することはできません。

SELECTステートメント
mysql> PREPARE stmt FROM 'SELECT tender_value from Tender WHERE
Companyname = ?';
Query OK, 0 rows affected (0.09 sec)
Statement prepared

mysql> SET @A = 'Singla Group.';
Query OK, 0 rows affected (0.00 sec)

mysql> EXECUTE stmt using @A;
+--------------+
| tender_value |
+--------------+
|   220.255997 |
+--------------+
1 row in set (0.07 sec)

mysql> DEALLOCATE PREPARE stmt;
Query OK, 0 rows affected (0.00 sec)

挿入、置換、更新、削除

データを変更するステートメント。

mysql> PREPARE stmt1 FROM 'DELETE from Tender WHERE Sr = ?';
Query OK, 0 rows affected (0.00 sec)
Statement prepared

mysql> SET @A = 4;
Query OK, 0 rows affected (0.00 sec)

mysql> EXECUTE stmt1;
ERROR 1210 (HY000): Unknown error 1210

mysql> EXECUTE stmt1 using @A;
Query OK, 1 row affected (0.08 sec)

mysql> DEALLOCATE PREPARE stmt1;
Query OK, 0 rows affected (0.00 sec)

mysql> Select * from tender;
+----+---------------+--------------+
| Sr | CompanyName   | Tender_value |
+----+---------------+--------------+
| 1  | Abc Corp.     |   250.369003 |
| 2  | Khaitan Corp. |   265.588989 |
| 3  | Singla group. |   220.255997 |
+----+---------------+--------------+
3 rows in set (0.00 sec)
> CREATETABLEステートメント。
mysql> PREPARE stmt3 FROM 'CREATE TABLE Student(Id INT, Name
Varchar(20))';
Query OK, 0 rows affected (0.00 sec)
Statement prepared

mysql> EXECUTE stmt3;
Query OK, 0 rows affected (0.73 sec)

mysql> DEALLOCATE PREPARE stmt3;
Query OK, 0 rows affected (0.00 sec)

SET、DO、および多くのSHOWステートメント

mysql> PREPARE stmt10 FROM 'SHOW TABLES';
Query OK, 0 rows affected (0.00 sec)
Statement prepared

mysql> EXECUTE stmt10;
+-------------------+
| Tables_in_query   |
+-------------------+
| emp               |
| emp123            |
| emp_t             |
| examination_btech |
| new_number        |
| student           |
| student_detail    |
| student_info      |
| tender            |
| website           |
+-------------------+
10 rows in set (0.00 sec)

  1. MySQL Workbenchの列フラグはどういう意味ですか?

    MySQL Workbenchでは、列フラグを列とともに使用して、整合性を維持できます。列フラグは次のとおりです- PK −主キー NN − NOT NULL BIN −バイナリ UN −署名なし UQ −ユニーク ZF −ゼロフィル G −列を生成 AI −自動インクリメント それらについて一つずつ学びましょう- PK これは主キーの略です。列を主キーとして作成するために使用できます。 NN NOTNULL用です。 NULL値を挿入しないように列を強制するために使用されます。 BIN こ

  2. MySQL SELECTステートメントの間にコンマを使用できますか?

    はい、できます。構文は次のとおりです- Syntax1: select * from yourTableName1,yourTableName2; Syntax2: select * from yourTableName1 cross join yourTableName2; 上記の構文はどちらも同じ結果になります。 まずテーブルを作成しましょう- mysql> create table DemoTable1882    (    Id int    ); Query OK, 0 rows affected (0.00 se