以下的文章主要介绍的是MySQL语句正确插入多值的实际操作步骤,以及HQL多表查询及在条件 in 中插入N个变量值的实际操作,我前两天在相关网站看见的资料,觉得挺好,就拿出来供大家分享。 一条sql语句插入多组数据:insert into table values (id,name),(id,nam
以下的文章主要介绍的是MySQL语句正确插入多值的实际操作步骤,以及HQL多表查询及在条件 in 中插入N个变量值的实际操作,我前两天在相关网站看见的资料,觉得挺好,就拿出来供大家分享。
一条sql语句插入多组数据:insert into table values (id,name),(id,name),(id,name) 但似乎语句长度有限制,不能超过1MB,并且该语句是MySQL专用的写法,不是标准sql.
以下转自paradise总结的HQL多表查询的写法及in的使用:
HQL查询多表的时候,取出结果是两个对象的列表,但是我只要我自己想要的属性,之前的HQL语句是这样写的:
<ol class="dp-xml"><li class="alt"><span><span>from Hytxbz h,Tgbzk t where </span><span class="attribute">h.hytxbzid</span><span>=t.hytxbzid and </span><span class="attribute">t.bztgid</span><span>=:bztgid </span></span></li></ol>
结果我debug去看query.list();是Hytxbz和Tgbzk两个对象的列表,结果并不是我想要的,我改成
<ol class="dp-xml"><li class="alt"><span><span>from Hybztx h where h.hytxbzid in (select t.hytxbzid from Tgbzk where </span><span class="attribute">t.bztgid</span><span> =:bztgid) </span></span></li></ol>
还是不行,google一把,发现可以这样写
<ol class="dp-xml"><li class="alt"><span><span>select h from Hytxbz as h,Tgbzk as t where </span><span class="attribute">h.hytxbzid</span><span>=t.hytxbzid and </span><span class="attribute">t.bztgid</span><span>=:bztgid </span></span></li></ol>
如果想取得对应属性的话,也可以这样写
<ol class="dp-xml"><li class="alt"><span><span>select h.hytxbzid from Hytxbz as h,Tgbzk as t where </span><span class="attribute">h.hytxbzid</span><span>=t.hytxbzid and </span><span class="attribute">t.bztgid</span><span>=:bztgid </span></span></li></ol>
发现in的语句可以这样写
<ol class="dp-xml"> <li class="alt"><span><span>String ids[]=new String[]{"1","2","3"}; </span></span></li> <li> <span>String </span><span class="attribute">hql</span><span>= </span><span class="attribute-value">" from com,you.YourPOJO where id in (?)"</span><span>; </span> </li> <li class="alt"> <span>Query </span><span class="attribute">query</span><span> = </span><span class="attribute-value">session</span><span>.createQuery(hql); </span> </li> <li><span>query .setParameters(ids); </span></li> </ol>
相关方法:
<ol class="dp-xml"> <li class="alt"><span><span>Query setParameters(Object[] objectArray, Type[] typeArray) throws HibernateException; </span></span></li> <li><span>Query setParameterList(String string, Collection collection, Type type) throws HibernateException; </span></li> <li class="alt"><span>Query setParameterList(String string, Collection collection) throws HibernateException; </span></li> <li><span>Query setParameterList(String string, Object[] objectArray, Type type) throws HibernateException; </span></li> <li class="alt"><span>Query setParameterList(String string, Object[] objectArray) throws HibernateException </span></li> </ol>
以上的相关内容就是对MySQL语句插入多值的介绍,望你能有所收获。

MySQLdiffersfromotherSQLdialectsinsyntaxforLIMIT,auto-increment,stringcomparison,subqueries,andperformanceanalysis.1)MySQLusesLIMIT,whileSQLServerusesTOPandOracleusesROWNUM.2)MySQL'sAUTO_INCREMENTcontrastswithPostgreSQL'sSERIALandOracle'ssequenceandt

MySQLパーティション化により、パフォーマンスが向上し、メンテナンスが簡素化されます。 1)大きなテーブルを特定の基準(日付範囲など)、2)物理的に独立したファイルに物理的に分割する、3)MySQLはクエリするときに関連するパーティションに焦点を合わせることができます。

mysqlで許可を許可および取り消す方法は? 1。grantallprivilegesondatabase_name.to'username'@'host 'などの許可を付与するために付与ステートメントを使用してください。 2。Revokeallprivilegesondatabase_name.from'username'@'host 'など、Revoke Statementを使用して、許可のタイムリーな通信を確保します。

INNODBは、トランザクションサポートと高い並行性を必要とするアプリケーションに適していますが、Myisamはより多くの読み取りとより少ない書き込みを必要とするアプリケーションに適しています。 1.INNODBは、eコマースおよび銀行システムに適したトランザクションおよび銀行レベルのロックをサポートしています。 2. Myisamは、ブログやコンテンツ管理システムに適した、迅速な読み取りとインデックス作成を提供します。

MySQLには4つのメイン結合タイプがあります:innerjoin、leftjoin、rightjoin、fullouterjoin。 1.InnerJoinは、結合条件を満たす2つのテーブルのすべての行を返します。 2.右のテーブルに一致する行がない場合でも、Leftjoinは左のテーブルのすべての行を返します。 3。右joinはleftjoinに反しており、右のテーブルのすべての行を返します。 4.fullouterjoinは、結合条件を満たしている、または満たさない2つのテーブルのすべての行を返します。

mysqloffersvariousstorageEngines、それぞれのfordifferentusecases:1)Innodbisidealforapplicationsingingidcomplianceanceandhighconcurrency、support transactions andforeignkeys.2)myisamisbestforread-havyworkloads、transactionsupptort.3)

MySQLの一般的なセキュリティの脆弱性には、SQLインジェクション、弱いパスワード、不適切な許可構成、および非合事ソフトウェアが含まれます。 1。SQL注射は、前処理ステートメントを使用することで防ぐことができます。 2。強力なパスワード戦略を強制的に使用することにより、弱いパスワードを回避できます。 3.不適切な許可構成は、ユーザー許可の定期的なレビューと調整を通じて解決できます。 4.未使用のソフトウェアは、MySQLバージョンを定期的にチェックして更新することでパッチを適用できます。

MySQLの遅いクエリを識別することは、遅いクエリログを有効にし、しきい値を設定することで実現できます。 1.スロークエリログを有効にし、しきい値を設定します。 2.スロークエリログファイルを表示および分析し、詳細な分析のためにMySQLDumpSlowやPT-Query-Digestなどのツールを使用します。 3.インデックスの最適化、クエリの書き換え、およびselect*の使用を回避することで、遅いクエリの最適化を実現できます。


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

VSCode Windows 64 ビットのダウンロード
Microsoft によって発売された無料で強力な IDE エディター

SublimeText3 Linux 新バージョン
SublimeText3 Linux 最新バージョン

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

mPDF
mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

ホットトピック









