package cn.Pdispose; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.SQLException; import java.sql.Statement; import cn.paging.JdbcUtil; //批处理 public class Dispose { private static Connection conn = null; p
package cn.Pdispose;import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.sql.Statement;
import cn.paging.JdbcUtil;
//批处理
public class Dispose {
private static Connection conn = null;
private static Statement st = null;
private static PreparedStatement ps = null;
public static void testInsert(){
try {
conn = JdbcUtil.getConnection();
st = conn.createStatement();
String sql1 = "insert into t_name(id,name) values(1,'jing')";
String sql2 = "insert into t_name(id,name) values(2,'zhang')";
String sql3 = "delete from t_name where id = 1";
//addBatch()内部为一个list,加到list中
st.addBatch(sql1);
st.addBatch(sql2);
st.addBatch(sql3);
//元素师每条语句影响到的行数
int [] i = st.executeBatch();
for(int num : i){
System.out.println(num);
}
} catch (SQLException e) {
e.printStackTrace();
}finally{
JdbcUtil.closeJdbc(conn, null, ps);
}
}
//同时在一个表里边插入100条数据
//由于语句完全相同,只是参数不同,使用PreparedStatement
public static void testInsert_1(){
long date = System.currentTimeMillis();
try {
conn = JdbcUtil.getConnection();
String sql = "insert into t_name values(?,?)";
ps = conn.prepareStatement(sql);
for(int i=1;i ps.setInt(1, i);
ps.setString(2, "date---"+i);
//将一组参数添加到此 PreparedStatement 对象的批处理命令中。
ps.addBatch();
}
//将一批命令提交给数据库来执行,如果全部命令执行成功,则返回更新计数组成的数组。
ps.executeBatch();
} catch (SQLException e) {
e.printStackTrace();
}finally{
JdbcUtil.closeJdbc(conn, null, ps);
}
System.out.println("用时:"+((System.currentTimeMillis()-date)/1000)+"秒");
}
//想数据库中插入10000条数据,并设置缓存区
public static void testInsert_2(){
//初始化一个时间
long time = System.currentTimeMillis();
try {
conn = JdbcUtil.getConnection();
String sql = "insert into t_name values(?,?)";
ps = conn.prepareStatement(sql);
for(int i=1;i ps.setInt(1, i);
ps.setString(2, "date"+i);
ps.addBatch();
if(i%1000==0){
ps.executeBatch();
ps.clearBatch();//清空数据
}
}
ps.executeBatch();
} catch (SQLException e) {
e.printStackTrace();
}finally{
JdbcUtil.closeJdbc(conn, null, ps);
}
System.out.println("用时:"+((System.currentTimeMillis()-time)/1000)+"秒");
}
public static void main(String[] args) {
testInsert_2();
}
}

MySQLのパフォーマンスを効果的に監視する方法は? MySqladmin、ShowGlobalStatus、PerconAmonitoring and Management(PMM)、MySQL EnterpriseMonitorなどのツールを使用します。 1. mysqladminを使用して、接続の数を表示します。 2。showglobalstatusを使用して、クエリ番号を表示します。 3.PMMは、詳細なパフォーマンスデータとグラフィカルインターフェイスを提供します。 4.mysqlenterprisemonitorは、豊富な監視機能とアラームメカニズムを提供します。

MySQLとSQLServerの違いは次のとおりです。1)MySQLはオープンソースであり、Webおよび埋め込みシステムに適しています。2)SQLServerはMicrosoftの商用製品であり、エンタープライズレベルのアプリケーションに適しています。ストレージエンジン、パフォーマンスの最適化、アプリケーションシナリオの2つには大きな違いがあります。選択するときは、プロジェクトのサイズと将来のスケーラビリティを考慮する必要があります。

高可用性、高度なセキュリティ、優れた統合を必要とするエンタープライズレベルのアプリケーションシナリオでは、MySQLの代わりにSQLServerを選択する必要があります。 1)SQLServerは、高可用性や高度なセキュリティなどのエンタープライズレベルの機能を提供します。 2)VisualStudioやPowerbiなどのMicrosoftエコシステムと密接に統合されています。 3)SQLSERVERは、パフォーマンスの最適化に優れた機能を果たし、メモリが最適化されたテーブルと列ストレージインデックスをサポートします。

mysqlManagesCharacterSetSetSetsAndCollations ByUSINGUTF-8ASTHEDEDEFAULT、CONFIGURATIONATDATABASE、TABLE、ANDCOLUMNLEVELS、ANDREQUIRINGCAREACTERSETANDCOLLATIONSFORADABASE.2

MySQLトリガーは、特定のデータ操作が実行されたときに一連の操作を実行するために使用されるテーブルに関連付けられた自動的に実行されたストアドプロシージャです。 1)定義と機能のトリガー:データ検証、ロギングなどに使用。2)動作原則:それは前後に分割され、行レベルのトリガーをサポートします。 3)使用例:給与の変更を記録したり、在庫を更新したりするために使用できます。 4)デバッグスキル:ShowTriggersとShowCreatetriggerコマンドを使用します。 5)パフォーマンスの最適化:複雑な操作を避け、インデックスを使用し、トランザクションを管理します。

MySQLでユーザーアカウントを作成および管理する手順は次のとおりです。1。ユーザーの作成:createUser'newuser '@' localhost'identifidedby'password 'を使用します。 2。許可を割り当てる:grantselect、insert、updateonmydatabase.to'newuser'@'localhost 'を使用します。 3.許可エラーを修正:Revokeallprivilegesonmydatabase.from'newuser'@'localhost 'を使用します。次に、許可を再割り当てします。 4。最適化権限:Showgraを使用します

MySQLは、迅速な開発や中小規模のアプリケーションに適していますが、Oracleは大規模な企業や高可用性のニーズに適しています。 1)MySQLはオープンソースで使いやすく、Webアプリケーションや中小企業に適しています。 2)Oracleは強力で、大企業や政府機関に適しています。 3)MySQLはさまざまなストレージエンジンをサポートし、Oracleは豊富なエンタープライズレベルの機能を提供します。

他のリレーショナルデータベースと比較したMySQLの欠点には次のものがあります。1。パフォーマンスの問題:大規模なデータを処理する際にボトルネックに遭遇する可能性があり、PostgreSQLは複雑なクエリとビッグデータ処理でより良いパフォーマンスを発揮します。 2。スケーラビリティ:水平スケーリング能力は、Google SpannerやAmazon Auroraほど良くありません。 3。機能的な制限:高度な機能におけるPostgreSQLやOracleほど良くないため、一部の関数では、より多くのカスタムコードとメンテナンスが必要です。


ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

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

人気の記事

ホットツール

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

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

MinGW - Minimalist GNU for Windows
このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。

PhpStorm Mac バージョン
最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)
