[SQL]の検索結果
世界的に広く普及しているオープンソースのデータベースエンジン「
SQLite」にセキュリティ上の
脆弱性があることがわかった。この
脆弱性が悪用された場合、被害者のコンピューターで悪意のあるコードの実行が可能にな...
世界的に広く普及しているオープンソースのデータベースエンジン「SQLite」にセキュリティ上の脆弱性があることがわかった。
この脆弱性が悪用された場合、被害者のコンピューターで悪意のあるコードの実行が可能になるという。
「SQLite」は膨大な数のアプリに組み込まれているため、この脆弱性はIoTデバイスからデスクトップソフトウェア、ウェブブラウザ、「Android」アプリ、
「iOS」アプリに至るまでの広範なソフトウェアに影響を及ぼすと見られており、
「Google Chrome」「Vivaldi」「Opera」「Brave」などの「Chromium」ベースのブラウザも影響を受けるという。
また、ブラウザ以外では、Google Homeも対象となっていて、この脆弱性を発見したTencent Bladeのチームはセキュリティアドバイザリで、
「この脆弱性でGoogle Homeを悪用することに成功した」と述べている。
この脆弱性の修正は、2018年12月1日に「SQLite 3.26.0」のリリースで公開されているが、「SQLite」を利用してアプリケーションを作成している開発者は早急な対応が必要だろう。
「SQLite」データベースに脆弱性--「Chromium」ベースのブラウザにも影響
SQLiteとは
SQLiteとは、ファイルベースで動作するオープンソースのRDBMS(Relational Database Management System)で、MySQLやOracleなどのクラインアント・サーバー型のデータベースと異なり、サーバーでデータベースプロセスを実行してデータベースを管理するのではなく、データベースはファイル単位で管理される。
他のRDBMSと同様にSQLでデータベースを操作することができ、組み込み系のRDBMSでありながらトランザクション処理にも対応しているが、 処理性能ではMySQLには及ばないとされている。
SQL Server 2017は、2017年10月2日(米国時間)に正式リリースされた、マイクロソフトが開発・販売しているRDBMS「
SQL Server」の最新版で、これまでもサポートされていた Windows
Server だけでなく、
LinuxとDocker...
SQL Server 2017は、2017年10月2日(米国時間)に正式リリースされた、マイクロソフトが開発・販売しているRDBMS「SQL Server」の最新版で、
これまでもサポートされていた Windows Server だけでなく、LinuxとDockerコンテナに新たに対応している。
また、開発とDevOpsシナリオを容易にするコンテナのサポート、「R」や「Python」による分析で人工知能(AI)を利用できるなどの新機能も搭載されている。
開発者向けに、Enterprise Edition のすべての機能が含まれたDeveloper Editionが無料で提供されており、開発者はSQL Server上で動作するあらゆる種類のアプリケーションの開発ができる。
SQL Server 2017 のエディション
- Enterprise:非常に優れたパフォーマンス、無制限の仮想化、エンドツーエンドのビジネスインテリジェンスを備えた包括的なハイエンド データセンター機能
- Standard:企業部門や小規模組織がアプリケーションを実行するための基本的なデータ管理/ビジネスインテリジェンスデータベースを提供
- Web:大小さまざまな規模の Web 資産に対応できるWeb ホスティング企業および Web VAP 向けの総保有コストの低いオプション
- Developer:Enterprise Edition の機能がすべて含まれた開発者向けのエディション、開発者はSQL Server上で動作するあらゆる種類のアプリケーションを開発できる
- Express:エントリレベルの無料のデータベースで、学習や、デスクトップおよび小規模サーバーデータドリブンアプリケーションの構築などに適している
SQL Server 2017についての情報
Linux および Windows 用 SQL Server 2017 | Microsoft
SQL Server 2017 の新機能
SQL Server のエディション
Microsoft、「SQL Server 2017」を正式リリース
SQL Server 2017 Developer をインストールする手順・方法
SQL Server
SQL Serverは米マイクロソフト社が主にWindows Server向けに開発・販売しているRDBMS。最新版の「SQL Server 2017」では、Windows Serverだけでなく
LinuxおよびDockerコンテナにも対応。
MySQLでは、INSERT ... SELECTを使用することで1つまたは複数のテーブルからレコードをテーブルに追加できます。また、SELECTでLIMIT句とORDER BYを使用して
上位n件のレコードのみテーブルに追加することもできます。...
MySQLでは、INSERT ... SELECTを使用することで1つまたは複数のテーブルからレコードをテーブルに追加できます。
また、SELECTでLIMIT句とORDER BYを使用して上位n件のレコードのみテーブルに追加することもできます。
構文:
INSERT
INTO テーブル
[(カラム, ...)]
SELECT ...
追加前にORDER BYで指定した方法で並べ替えられ、LIMIT句で指定した行数のレコードが追加されます。
例えば、データベースtestのsalesテーブルに10件のレコードが格納されていて、priceの値が低い順に3件のレコードをjunkテーブルに追加する場合は以下のSQL文になります。
INSERT INTO test.junk (product,price) SELECT product,price FROM test.sales ORDER BY price Limit 3;
実際に実行してみると以下のような結果になります。
salesテーブルのデータ:
mysql> select * from test.sales order by price;
+----------+-------------+---------+----------+
| ordernum | product | price | quantity |
+----------+-------------+---------+----------+
| 3 | WII | 4500 | 2 |
| 5 | PS3 | 10000 | 4 |
| 8 | G-SHOCK | 12000 | 9 |
| 9 | EXILIM | 14000 | 7 |
| 1 | PS4 | 20000 | 1 |
| 6 | COOLPIX | 23000 | 1 |
| 7 | amazon fire | 25000 | 6 |
| 10 | GoPro | 27000 | 3 |
| 4 | iPhone SE | 50000 | 4 |
| 2 | iPhone 6 | 1000000 | 2 |
+----------+-------------+---------+----------+
10 rows in set (0.00 sec)
実行前のjunkテーブルのデータ:
mysql> select * from test.junk;
Empty set (0.00 sec)
INSERT ... SELECT文を実行:
mysql> INSERT INTO test.junk (product,price) SELECT product,price FROM test.sales ORDER BY price Limit 3;
Query OK, 3 rows affected (0.05 sec)
Records: 3 Duplicates: 0 Warnings: 0
実行後のjunkテーブルのデータ:
mysql> select * from test.junk;
+---------+-------+
| product | price |
+---------+-------+
| WII | 4500 |
| PS3 | 10000 |
| G-SHOCK | 12000 |
+---------+-------+
3 rows in set (0.00 sec)
参考:
MySQL 5.6 リファレンスマニュアル INSERT ... SELECT 構文
MySQLでは、UPDATEでLIMIT句とORDER BYを使用して
上位n件のレコードを更新することができます。更新前にORDER BYで指定した方法で並べ替えられ(ASCは昇順、DESCは降順、省略した場合は昇順)、LIMIT句で指定した行数...
MySQLでは、UPDATEでLIMIT句とORDER BYを使用して上位n件のレコードを更新することができます。
更新前にORDER BYで指定した方法で並べ替えられ(ASCは昇順、DESCは降順、省略した場合は昇順)、LIMIT句で指定した行数のレコードが更新されます。
構文:
UPDATE テーブル
SET カラム1={expr1|DEFAULT} [, カラム2={expr2|DEFAULT}] ...
[WHERE 条件]
ORDER BY カラム [ASC | DESC]
LIMIT 行数;
例えば、データベースtestのsalesテーブルに10件のレコードが格納されていて、priceの値が低い順に3件のレコードのquantityに1を加算する場合は以下のSQL文になります。
UPDATE test.sales SET quantity = quantity + 1 ORDER BY price LIMIT 3;
実際に実行してみると以下のような結果になります。
更新前のデータ:
mysql> select * from test.sales order by price;
+----------+-------------+---------+----------+
| ordernum | product | price | quantity |
+----------+-------------+---------+----------+
| 3 | WII | 4500 | 1 |
| 5 | PS3 | 10000 | 3 |
| 8 | G-SHOCK | 12000 | 8 |
| 9 | EXILIM | 14000 | 7 |
| 1 | PS4 | 20000 | 1 |
| 6 | COOLPIX | 23000 | 1 |
| 7 | amazon fire | 25000 | 6 |
| 10 | GoPro | 27000 | 3 |
| 4 | iPhone SE | 50000 | 4 |
| 2 | iPhone 6 | 1000000 | 2 |
+----------+-------------+---------+----------+
10 rows in set (0.00 sec)
strong>UPDATE文を実行:
mysql> UPDATE test.sales SET quantity = quantity + 1 ORDER BY price LIMIT 3;
Query OK, 3 rows affected (0.03 sec)
Rows matched: 3 Changed: 3 Warnings: 0
更新後のデータ:
mysql> select * from test.sales order by price;
+----------+-------------+---------+----------+
| ordernum | product | price | quantity |
+----------+-------------+---------+----------+
| 3 | WII | 4500 | 2 |
| 5 | PS3 | 10000 | 4 |
| 8 | G-SHOCK | 12000 | 9 |
| 9 | EXILIM | 14000 | 7 |
| 1 | PS4 | 20000 | 1 |
| 6 | COOLPIX | 23000 | 1 |
| 7 | amazon fire | 25000 | 6 |
| 10 | GoPro | 27000 | 3 |
| 4 | iPhone SE | 50000 | 4 |
| 2 | iPhone 6 | 1000000 | 2 |
+----------+-------------+---------+----------+
10 rows in set (0.00 sec)
上位3件のレコードだけquantityが1加算されていることがわかると思います。
参考:
MySQLリファレンスマニュアル 13.2.11 UPDATE 構文
T-
SQL (Transact-
SQL) は、SybaseとMicrosoftが
SQL Sserver用に、データの操作や定義を行うためのデータベース言語である
SQLに独自の
拡張機能を追加したプログラミング
言語で、制御フロー、局所変数、グローバル変数...
T-SQL (Transact-SQL) は、SybaseとMicrosoftがSQL Sserver用に、データの操作や定義を行うためのデータベース言語であるSQLに独自の拡張機能を追加したプログラミング言語で、制御フロー、局所変数、グローバル変数、文字列処理、データ処理、数値処理のため関数、カーソルなどが追加されている。
OracleのPL/SQL同様に独自機能を利用することでSQL標準との互換性は損なわれるものの、業務アプリケーションを作成する際に標準SQLではできないことも可能であるというメリットもある。
SQL Server 入門
Transact-SQL リファレンス (データベース エンジン)
SQL Server データベース エンジン
SQL Server 2012の教科書 開発編
ソシム 著者:松本 美穂,松本 崇博
amazon.co.jpのカスタマーレビューを見る
powered by amalink
PL/SQL(ピーエル・エスキューエル)は、
Oracle社が同社のデータベース製品である
Oracle Databaseを使用するために、
SQL(データの操作や定義を行うためのデータベース言語)を独自に
拡張したプログラミング
言語で、変...
PL/SQL(ピーエル・エスキューエル)は、Oracle社が同社のデータベース製品であるOracle Databaseを使用するために、SQL(データの操作や定義を行うためのデータベース言語)を独自に拡張したプログラミング言語で、変数の利用やif、for、loopなどの制御構造の記述、例外処理、文字列、数値、日付などを処理する各種関数、問い合わせ結果の行を一件ずつ処理するカーソルなどが利用できるようになっている。
PL/SQL プログラミング入門(1)
PL/SQL プログラミング入門(2)
OracleR Database PL/SQL言語リファレンス
プロとしてのOracle PL/SQL入門 【第3版】(Oracle 12c、11g、10g対応) (Oracle現場主義)
SBクリエイティブ 著者:アシスト教育部
amazon.co.jpのカスタマーレビューを見る
powered by amalink
MySQLでは、DELETE文でLIMIT句とORDER BYを使用して
上位n件の
レコードを削除することができます。削除前にORDER BYで指定した方法で並べ替えられ(ASCは昇順、DESCは降順、省略した場合は昇順)、
LIMIT句で指定した行...
MySQLでは、DELETE文でLIMIT句とORDER BYを使用して上位n件のレコードを削除することができます。
削除前にORDER BYで指定した方法で並べ替えられ(ASCは昇順、DESCは降順、省略した場合は昇順)、LIMIT句で指定した行数のレコードが削除されます。
構文:
DELETE FROM テーブル [WHERE 条件]
ORDER BY カラム [ASC | DESC]
LIMIT 行数;
例えば、データベースtestのsalesテーブルに10件のレコードが格納されていて、priceの値が低い順に3件のレコードを削除する場合は以下のSQL文になります。
DELETE FROM test.sales ORDER BY price LIMIT 3;
実際に実行してみると以下のような結果になります。
削除前のデータ:
mysql> select * from test.sales order by price;
+----------+-------------+---------+----------+
| ordernum | product | price | quantity |
+----------+-------------+---------+----------+
| 3 | WII | 4500 | 1 |
| 5 | PS3 | 10000 | 3 |
| 8 | G-SHOCK | 12000 | 8 |
| 9 | EXILIM | 14000 | 7 |
| 1 | PS4 | 20000 | 1 |
| 6 | COOLPIX | 23000 | 1 |
| 7 | amazon fire | 25000 | 6 |
| 10 | GoPro | 27000 | 3 |
| 4 | iPhone SE | 50000 | 4 |
| 2 | iPhone 6 | 1000000 | 2 |
+----------+-------------+---------+----------+
10 rows in set (0.01 sec)
DELETE文を実行:
mysql> DELETE FROM test.sales ORDER BY price LIMIT 3;
Query OK, 3 rows affected (0.08 sec)
削除後のデータ:
mysql> select * from test.sales order by price;
+----------+-------------+---------+----------+
| ordernum | product | price | quantity |
+----------+-------------+---------+----------+
| 9 | EXILIM | 14000 | 7 |
| 1 | PS4 | 20000 | 1 |
| 6 | COOLPIX | 23000 | 1 |
| 7 | amazon fire | 25000 | 6 |
| 10 | GoPro | 27000 | 3 |
| 4 | iPhone SE | 50000 | 4 |
| 2 | iPhone 6 | 1000000 | 2 |
+----------+-------------+---------+----------+
7 rows in set (0.00 sec)
SQLiteの
select文でn件目〜m件目までのデータを取得する場合も、
上位n件の場合と同様にLIMIT句を使用しますが、開始位置の指定が必要になります。データは開始位置で指定した値の次の
レコードから取得されます。構文...
SQLiteのSELECT文でn件目~m件目までのデータを取得する場合も、上位n件の場合と同様にLIMIT句を使用しますが、開始位置の指定が必要になります。データは開始位置で指定した値の次のレコードから取得されます。
構文:
SELECT カラム名, ... FROM テーブル名 LIMIT 開始位置, 行数;
または
SELECT カラム名, ... FROM テーブル名 LIMIT 行数 OFFSET 開始位置;
例えば、ordernum, product, price, quantityの4つのカラムを持つsalesテーブルに10件のレコードが存在していて、priceの値が小さい順に3件目から7件目まで5件のレコードを取得する場合のSELECT文は以下のようになります。
SELECT * FROM sales ORDER BY price LIMIT 2, 5;
または
SELECT * FROM sales ORDER BY price LIMIT 5 OFFSET 2;
このSELECT文を実行すると先頭から2件のレコードは取得されずに、3件目から7件目までの5件分のレコードが取得されます。
LIMIT句を使用しない場合の実行結果:
ordernum, product, price, quantity
3, WII, 4500, 1
5, PS3, 10000, 3
8, G-SHOCK, 12000, 8
9, EXILIM, 14000, 7
1, PS4, 20000, 1
6, COOLPIX, 23000, 1
7, amazon fire, 25000, 6
10, GoPro, 27000, 3
4, iPhone SE, 50000, 4
2, iPhone 6, 1000000, 2
LIMIT句に「LIMIT 5 OFFSET 2」を指定した場合の実行結果:
ordernum, product, price, quantity
8, G-SHOCK, 12000, 8
9, EXILIM, 14000, 7
1, PS4, 20000, 1
6, COOLPIX, 23000, 1
7, amazon fire, 25000, 6
SQL ゼロからはじめるデータベース操作
翔泳社
amazon.co.jpのカスタマーレビューを見る
powered by amalink
SQLiteでは、AccessやMicrosoft
SQL ServerのようにTOP句を使用して上位n件のデータを取得することはできません。
SQLiteのSELECT文で
上位n件のデータを取得する場合はLIMIT句を使用します。構文:SELECT カラム名, ....
SQLiteでは、AccessやMicrosoft SQL ServerのようにTOP句を使用して上位n件のデータを取得することはできません。SQLiteのSELECT文で上位n件のデータを取得する場合はLIMIT句を使用します。
構文:
SELECT カラム名, ... FROM テーブル名 LIMIT 行数;
例えば、ordernum, product, price, quantityの4つのカラムを持つsalesテーブルに10件のレコードが存在していて、priceの値が小さい順に3件取得する場合のSELECT文は以下のようになります。
SELECT * FROM sales ORDER BY price LIMIT 3;
LIMIT句を使用しない場合の実行結果:
ordernum, product, price, quantity
3, WII, 4500, 1
5, PS3, 10000, 3
8, G-SHOCK, 12000, 8
9, EXILIM, 14000, 7
1, PS4, 20000, 1
6, COOLPIX, 23000, 1
7, amazon fire, 25000, 6
10, GoPro, 27000, 3
4, iPhone SE, 50000, 4
2, iPhone 6, 1000000, 2
LIMIT句に3を指定した場合の実行結果:
ordernum, product, price, quantity
3, WII, 4500, 1
5, PS3, 10000, 3
8, G-SHOCK, 12000, 8
SQLite ポケットリファレンス
技術評論社 著者:五十嵐 貴之
amazon.co.jpのカスタマーレビューを見る
powered by amalink
ウェブアプリケーション開発者必読の資料です。
セキュリティの問題は奥が深い。「安全なウェブサイトの作り方」改訂第7版の内容・第1章では、「ウェブアプリケーションの
セキュリティ実装」として、SQLインジェクショ...
ウェブアプリケーション開発者必読の資料です。セキュリティの問題は奥が深い。
「安全なウェブサイトの作り方」改訂第7版の内容
・第1章では、「ウェブアプリケーションのセキュリティ実装」として、SQLインジェクション 、OSコマンド・インジェクション やクロスサイト・スクリプティング 等11種類の脆弱性を取り上げ、それぞれの脆弱性で発生しうる脅威や特に注意が必要なウェブサイトの特徴等を解説し、脆弱性の原因そのものをなくす根本的な解決策、攻撃による影響の低減を期待できる対策を示しています。
・第2章では、「ウェブサイトの安全性向上のための取り組み」として、ウェブサーバの運用に関する対策やウェブサイトにおけるパスワードの取扱いに関する対策等7つの項目を取り上げ、主に運用面からウェブサイト全体の安全性を向上させるための方策を示しています。
・第3章では、「失敗例」として、第1章で取り上げた脆弱性の中から8種類を取り上げ、ウェブアプリケーションに脆弱性を作り込んでしまった際のソースコード、その解説、修正例を示しています。
・巻末には、ウェブアプリケーションのセキュリティ実装の実施状況を確認するためのチェックリストも付属しています。
ブックマーク先へ 安全なウェブサイトの作り方:IPA 独立行政法人 情報処理推進機構
1 2 3 4 5 次へ >
アクセスランキング
- SQLのSELECT文で先頭から上位(TOP)10件のレコードを取得する方法(SQL Server、Oracle、MySQL、PostgreSQL) (36 PV)
- Google Finance(グーグルファイナンス)- リアルタイム株価情報、金融ニュース、日本株 (8 PV)
- 使用制限無し完全無料のMT4向けナンピンEA「Nanpin K(ナンピンケイ)」 (8 PV)
- 2chまとめサイト - 痛いニュース(ノ∀`) (6 PV)
- [FX]裁量ポジションを簡単に管理できるMT4向け無料の裁量補助EA「PositionKeeper」 (4 PV)
- 仲値トレードが簡単にできる無料EA「NAKANE3 Ver 2.04」 #MT4 (4 PV)
- MT4向けオープンソースナンピンマーチンEA「Automaton」 (3 PV)
- 完全無料のMT5用ナンピンEA「Nanpin K(ナンピンケイ) MT5」 使用制限無し (3 PV)
- 裁量トレードを自動化する裁量補助EA「AutoScalper Demo」 (3 PV)
- 時間指定で仲値トレードも簡単にできる無料EA「NAKANE3 Ver 2.02」 (3 PV)
- SQLのSELECT文で先頭から上位(TOP)10件のレコードを取得する方法(SQL Server、Oracle、MySQL、PostgreSQL) (256 PV)
- 2chまとめサイト - 痛いニュース(ノ∀`) (105 PV)
- Google Finance(グーグルファイナンス)- リアルタイム株価情報、金融ニュース、日本株 (57 PV)
- 使用制限無し完全無料のMT4向けナンピンEA「Nanpin K(ナンピンケイ)」 (49 PV)
- 安全性重視の完全無料ナンピンマーチンEA「Million Dollar(ミリオンダラー)」 #FX #ゴールド #ビットコイン (38 PV)
- 完全無料のMT5用ナンピンEA「Nanpin K(ナンピンケイ) MT5」 使用制限無し (37 PV)
- 日経平均株価(にっけいへいきんかぶか) (35 PV)
- 自作のMT4向け無料EA(口座縛り無し、ブローカー縛り無し、使用期限無し)とゴゴジャン出品中の有料EAの一覧 #MT4 (33 PV)
- 仲値トレードが簡単にできる無料EA「NAKANE3 Ver 2.04」 #MT4 (27 PV)
- [FX]裁量ポジションを簡単に管理できるMT4向け無料の裁量補助EA「PositionKeeper」 (26 PV)
アクセス統計
ディレクトリ
関連サイト