MySQLの知識と操作

アカウント:/var/log/mysqld.logでmysql8着陸ルートアカウント、初期パスワード

  アカウントを作成します。「パスワード」でmysql_native_password識別「所有者」@ユーザー名を作成します。

  認証:ユーザーへのスコープの付与権限、
  Linux上で*に*すべての権限を付与し;.
  ADMINにdb.studentのSELECT名を付与します。

 

  ユーザーからのスコープに権限を取り消す;:撤回する権利
  のLinux ;.の学生からSELECT *をREVOKE

  権限:SELECT、INSERT、ドロップ、更新 、作成、助成金取り消し、変更ようにし、
  対象範囲:データベーステーブル。
  すべてのための*

 

  パスワードの変更:mysql5.7以前に暗号化された暗号機能:パスワード(「パスワード」)

  設定したパスワード=「パスワード」; - rootアカウントのデフォルト

  ユーザー名=「パスワード」のパスワードを設定します。

 

  閲覧権限:降順mysql.user;

  ユーザーのための助成金を示し;

  mysql.userから*を選択する場所、ユーザー=「ユーザ名」とホスト=「オーナー」\ G;

 

インポート、データベースの復元:1、ツール(SQLyogの)に導入:インポート→実行SQLスクリプト(CTRL +シフト+ Q)

            MySQLの>ソースD:MySQLでは導入2、/db.sql。

            図3に示すように、外側導入のMySQL:MySQLの-uroot <D:/db.sql

エクスポート、バックアップデータベース:1、エクスポートツール(SQLyogの):SQL(CTRL +シフト+ E)へのエクスポート/バックアップ→バックアップデータベースのダンプ

                図2に示すように、外側のMySQLのエクスポート:①複数のデータベースを導き出す:mysqldumpを-uroot --databases DB1のAB2のDB3> D:/db.sql

                         複数のテーブルを持つデータベース内の②エクスポートデータ構造:mysqldumpを-uroot -p DBのT1、T2> D:/m.sql

                      説明:>追加-d限り長いテーブル、テーブル構造が先行-tデータ(操作)

      すべてのデータベースには、-Aとして表現します

データタイプ
  1、数:整数TINYINT、SMALLINT、INT、BIGINT
        進小数(P、S):pは総文字数制限であり、Sのような小数の限界である10進数(3,2)9.9

  2、文字列:CHAR(18 )18バイト
        のvarchar(50)、50文字の
        テキスト
        LONGTEXT

  3、日付と時刻:日付時刻日付と時刻の午前15時59分30秒2019年8月20日
         DATE日2019年8月20日


  4、バイナリ
  5、複合型

       列挙型()列挙:性別列挙( '男性'、 '女性'、 '秘密');
      SET()コレクション:SET( 'Javaの'、 'PHP'、 'Pythonの');
          のJava '' PHP、Pythonの'パイソン、PHP、Java(登録商標)' 'HTML、PHP'
  。6、JSONタイプ(NoSQLの特性)

操作:(:学生が存在する場合、テーブルをドロップするようにするための条件か否かが判断された場合、以下のテーブルにアクセスすることができます。)

  インポートデータベース:ソースファイル名。

  まず、テーブルの設立は、(データベースを使用するには;)
    テーブルのテーブルを作成します(
      ``列名データ型制約、
      ...
    )=のInnoDBエンジンのcharset = UTF-8;

    のような学生表でない場合は(EXISTS作成し
      たSnO AUTO_INCREMENT unsigned int型主キーを、
      VARCHARのSNAME(30)、
      sgender列挙型( '男性'、 '女性')、
      sbrithday日時、
      smoney進(8,1)、
      sdept VARCHAR(50)、デフォルトの'コンピュータサイエンス'、
      テキストSINFO
    )エンジンはInnoDBのcharset = utf8のAUTO_INCREMENT = = 201601;

  第二に、データテーブルを表示:テーブル名から選択*;
  テーブル構造を参照してください。DESCテーブルと、
  表を修正:
  -テーブル名を変更し
  、新しい名前に名前を変更するテーブルのテーブル名を変更し、
  新しい名前にテーブルのテーブル名を変更。

  -増加
  ALTERテーブルの列名テーブルは``データタイプを追加、
  データ型の後``追加テーブルのカラム名テーブルを変更し、
  ``最初のデータ・タイプを追加するテーブルの列名テーブルを変更します。

  -列名とタイプ(必須)を変更し
  、変更テーブルの列名テーブル名の新しいデータ型を改変すること。

  -削除
  ALTER TABLEテーブル名]ドロップ``列の名前を。

  -ドロップテーブルの
  ドロップテーブルのテーブル名は、
  テーブルに存在する場合は、テーブルをドロップします。

  第三に、付加および欠失(通常は主キー値と、ここで、インデックス情報バックを位置決め)

    :インサート:(文字列「」、空間充填ヌル、満たしていないと、カンマで区切られた)テーブル値を挿入し
    、テーブル値を(挿入)、()、():複数の挿入
    部分のフィールドを挿入します:テーブル( `列NAME``列NAME`)値(値、値)を挿入し、
    インサートが中に挿入されていないとして、典型的には、主キーは、int型とテーブルであるの指定された位置が「指定」するために、プライマリ・キー配列であることを特徴としますシリアル番号主キー挿入ストリップは注意してください

    削除:テーブル名から削除WHERE ``カラム名=値;

    変更;フィールド位置更新テーブルセット`カラムNAME` =値
    、更新テーブルセット`カラムNAME` =値「列名'フィールドは、フィールドの位置と、位置決めされ=値

  :第四には、チェック(キー、声明は、区別をラップすることができます超える場合)

    共通の計算:選択機能;
    など:この場合:NOW()、時間:DATE_ADD(NOW()、インターバル 10日) までの時間:DATE_ADD(NOW()、インターバル -10日)、 H:時間(現在( ))、一意の文字列:UUID()

    クエリデータ:フィールド条件は表ビューから選択し、
    別名の形式:エイリアスフィールド条件は、テーブルビューから選択します。

    ① 視野:カラム名または機能の内容を表示するために、フィールドの形状を算出して表示することを、カンマで区切られた複数のビューを表示する書き込み。(※表内のすべてのフィールドを表します)     

      別個+フィールド名、等:見た重複したコンテンツを除去する1

        個別のアドレスを選択...

      図2に示すように、一般的な機能:・メータ行機能:COUNT(*)
              ・INT関数:MAX()、分() 、AVG()、SUM()、丸()、床()、ABS()、CEIL()、 SQRT()
              ・文字列(時間)機能:CHAR_LENGTH()、長さ() 、今()、FROM_UNIXTIME( タイムスタンプ)、UNIX_TIMESTAMP( '2006-11-04 12時23分○○秒' )、CONCAT( リンク機能) 、CONCAT_WS(最初の場所に書き込まれたセパレータ)

                        反復(リピート機能)、上部()、下()、左(文字列、アクセスの数)、右(STR、長さ)、中間(とら)

            これらのフィールドの機能をそのままの値として使用することができないように、使用するには、次のような選択値として結果を使用して、S = MAX()、利用可能なサブ問合せ、等:S =(MAX(SNO)を選択...)


      3、サブクエリ:最初の新しい囲まれたテーブルとして結果を表示します!再選択するために、
            学生情報の最高スコアを表示するよう:選択*学生からどこ火格子= (学生からの最大(格子)を選択します)。

      図4に示すように、関数は、以下の場合:(ある場合に)結果として戻り値をチェック
            する場合(条件値1、値2)
            もし(条件値1、IF(条件値2、...))
             のような:
               SELECTレベル、カウント(*)番号
               (SELECT SNAME名、
                sperformance結果、
                IF(sperformance> = 90、 '良い'、IF(sperformance> = 80 、 ' 良い'、IF(sperformance> = 60 、 ' パス'、 'メイクアップ') ))の評価
                学生からの
                SSグループレベルによって)。

      5、ランク付け、ソート
        のソートフィールドの追加、5.1:(オーダー上で選択ROW_NUMBERを()によるから列名降順)...数
        5.2、新しい順位フィールド:
            ランキングスキップ:選択順位を()順(オーバーにより、 列名のASCによってテーブル名の順序から列名ASC)は、
            ソートスキップしない:(順序を選択DENSE_RANK()によって、 列名ASCにより、テーブル名の順序から列名DESC);
              SELECTランク()順序(上grate` `で学生からの注文`によってASC)grate` ASC;

    ② 条件:のような特許請求の範囲、制約、それによってスクリーニングデータ、前のフィールドと:どの列(フィールド)の正面図であり、視線である指数を(条)、何の条件は、全体的に全てのデータを表示しません

      1は、行を見るかを指定:
        行の数を制限;
        ;リミットスタートライン、行数
          0,10を制限生徒からSELECT *を;

      2、クエリ:ここ+データ以下`カラムNAME`
            =、=、>、<、> =、<=!決意値
            と:と
            、または:または
            等は、好きではない:ワイルドカードを使用することができます。%(0を発現します、1以上、例えば: '%は%がされて'、 '%キング')_が(など、文字で表さ'__' '李_')
            ()で、未(に)
            、されないが:表し(むしろ決意値より)特性を決定するための``非!。のような:WHERE nullの名前ではありません学生からSELECT *;
            RegRep: '^ [0-9A-ZA-Z] + $':正規表現、など
            と... BETWEEN ..:秩序日付、数値、およびその他のデータについて、のような:「1990年1月1日」と「2000年1月1日」BETWEEN STUから* WHERE `birthday` SELECT;
            ないBETWEEN ...と...
      3:文のパケット群によって:後で、同じが分かれていますHAVINGセット
          SELECT左(SNAME、1)名前、COUNT(*)番号を  学生から  左(SNAMEによって、グループ、

      4:によって文の順序を並べ替え
          昇順(デフォルト): `` ASC列名によって順序
          降順に:DESC列NAME`の`によって順

    ③union:限り同じテーブル構造の両方として、一緒に表示される二クエリを接続します

    (他のテーブルクロス、テーブルビューに関連付けられている)④外部キー:制約は、外部キー(列名)テーブル名(カラム名)を参照fkを
      外部キーが一意のインデックス(他のテーブルの通常のプライマリキー)でなければならない
      表の外側の確立をキー:FK制約外部キー(TID)は、リファレンス教師(ID)
        SELECT s.`id`、s.`name`、s.`grate`、S、T t.`id`教師から学生t.`name` s.`id` =;
        t.`id` ON s.`id`、s.`name`、s.`grate`、参加教師Sから左S、T教師学生から学生t.`name`を= SELECT .`id`;

  ファイブレプリケート・テーブル(バックアップ):
    コピーテーブル構造:テーブルのようなテーブルに新しいテーブルを作成し、
    データテーブルを複製:テーブルSELECT * FROM新しいテーブルを挿入します。

    コピーのみのデータテーブル:テーブルから*として選択テーブルの新しいテーブルを作成し、
    部分的にコピーすることができる:選択新しいテーブルの列名、テーブル名から列名としてテーブルを作成します。

 

説明
0、ユーザーがroot @%のように使用してみてください、linux@'192.168.10.11「形式の
``ラップは好ましくれると、列名
1、aはフィールド(フィールド)、名前を呼ばれ、列名と呼ばれている
2、の確立制約フィールドです:①auto_increment主キー(主キー:ユニークインデックス)
②注:コメント、デフォルト:デフォルトなし負の符号:符号なし
... 3、テーブル名を持つ- >利用可能なデータベーステーブル< -クロスデータベーステーブル達成
4を、彼らは「何のデータ」を表現しないようにしたい場合は、セルの内容は、結果的にあなたは0または「」を記入し、「空データ」を表現したい場合は、ヌルを埋めるに記入していないことはできません
5、削除ドロップ:データベース、テーブル、アカウントは、データが削除削除
6を、複数の表示します表:STU1、STU2からSELECT *、stu3;
7、タイムリーなリフレッシュ権限許可を与える:フラッシュ権限
8、ユニバーサル:役割は権限のセットです

おすすめ

転載: www.cnblogs.com/shuangfeike/p/11443395.html