(ベータ版)EventFront SQL Speed Storage
📘 EventFront SQL Speed Storage 利用ガイド
EventFront SQL Speed Storageを使ってデータベース操作が行える軽量サーバーです。
ポート 3307
を通じてMySQLクライアントから接続できます。
🚪 接続情報
ホスト:sql-speed-ja.mixedercloud.com
ポート:3307
ユーザー名:APIキー
パスワード:なし
データベース名:指定不要(無視されます)
✅ サポートされるSQL文
データ取得
SELECT * FROM users
条件検索
SELECT * FROM users WHERE age > 20 AND gender = 'male'
並び替え
SELECT * FROM users ORDER BY age DESC
件数制限
SELECT * FROM users LIMIT 10 OFFSET 5
データ追加
INSERT INTO users (name, age) VALUES ('Alice', 22)
データ更新
UPDATE users SET age = 23 WHERE id = 1
データ削除
DELETE FROM users WHERE id = 1
❌ 非対応のSQL機能と代替案
JOIN
非対応
各テーブルを個別に読み込んで結合処理はクライアント側で実装
GROUP BY
非対応
クライアント側でデータ集計(例:Array.prototype.reduce()
)
HAVING
非対応
同上
LIKE
非対応
クライアント側で部分一致チェック(includes
, match
等)
IN
, BETWEEN
非対応
WHEREを工夫しクライアント側でフィルタリング
複数行INSERT
非対応
1行ずつINSERTを繰り返す
CREATE TABLE
等
非対応
最初のINSERT時に自動でテーブルが生成されます
Prepared Statements
非対応
入力値の整形・エスケープはクライアント側で実装
トランザクション
非対応
同時更新やロールバックはサポートしていません
🧠 WHERE条件の詳細
AND
,OR
の複雑な組み合わせに対応(※ただし括弧によるグルーピングは非対応)使用可能な比較演算子:
=
,!=
,<
,>
,<=
,>=
sqlCopyEditSELECT * FROM users WHERE age >= 18 AND gender = 'male' OR name = 'Alice';
🖥 GUIでの接続方法(DBeaver, HeidiSQL, TablePlusなど)
新しい接続を作成
MySQL を選択
ホスト:
localhost
ポート:
3307
ユーザー名:
root
(任意)パスワード:空白でOK
データベース名は空でも可。必要に応じて仮の名前を入力
✅ 注意:EventFront SQL Speed StorageはSQL互換のチューニングサーバーのため、
SHOW TABLES
やDESCRIBE
等のメタ情報取得コマンドは使えません。
💻 各言語での接続サンプル
Node.js(mysql2)
bashCopyEditnpm install mysql2
jsCopyEditconst mysql = require("mysql2/promise");
(async () => {
const conn = await mysql.createConnection({ host: "localhost", port: 3307, user: "root" });
const [rows] = await conn.query("SELECT * FROM users WHERE age >= 20 ORDER BY age DESC LIMIT 10");
console.log(rows);
await conn.end();
})();
Python(mysql-connector-python)
bashCopyEditpip install mysql-connector-python
pythonCopyEditimport mysql.connector
conn = mysql.connector.connect(
host="localhost",
port=3307,
user="root"
)
cursor = conn.cursor(dictionary=True)
cursor.execute("SELECT * FROM users WHERE age >= 18")
for row in cursor.fetchall():
print(row)
conn.close()
PHP(PDO)
phpCopyEdit<?php
$pdo = new PDO('mysql:host=127.0.0.1;port=3307;', 'root', '');
$stmt = $pdo->query("SELECT * FROM users WHERE gender = 'female'");
$rows = $stmt->fetchAll(PDO::FETCH_ASSOC);
foreach ($rows as $row) {
echo $row['name'] . "(" . $row['age'] . "歳)<br>";
}
?>
Java(JDBC)
javaCopyEditimport java.sql.*;
public class App {
public static void main(String[] args) throws Exception {
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3307/", "root", "");
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("SELECT * FROM users");
while (rs.next()) {
System.out.println(rs.getString("name") + " - " + rs.getInt("age"));
}
conn.close();
}
}
C#(.NET + MySql.Data)
csharpCopyEditusing MySql.Data.MySqlClient;
var conn = new MySqlConnection("server=localhost;port=3307;user=root;");
conn.Open();
var cmd = new MySqlCommand("SELECT * FROM users", conn);
var reader = cmd.ExecuteReader();
while (reader.Read())
{
Console.WriteLine($"{reader["name"]} ({reader["age"]})");
}
conn.Close();
💡 ヒント:未対応機能の代替処理
JOIN
複数回SELECTしてロジックで結合(マッチするIDを手動で照合)
GROUP BY
Array.reduce()
や groupby
でクライアント側集計
LIKE
includes
, match
, RegExp
を用いた文字列部分一致検索
IN (...)
WHERE column = x OR column = y OR ...
または .filter()
📞 サポート
不明点・バグ報告・新機能の要望などは開発者までお問い合わせください。
EventFront SQL Speed Storageはベータ版のため、高負荷環境や複数同時接続には向きません。
📦 補足
一般的なSQLサーバーよりも高い負荷に対応したサーバーです。
管理者がテーブル構造をあらかじめ定義しなくても使用可能です。
最終更新
役に立ちましたか?