「データベース」カテゴリー

データベース


データベース名のブロック

データベース一覧画面で作成できるデータベースです。 ブロックにはデータベースの名前が表記されています。

ツールボックスには、グループ別に全てのデータベースが表示されます。

ブロックが使用中であるにもかかわらず、データベースを削除した場合や、 データベースが削除された状態でこのブロックをバックパックからドロップした場合、 無効であることを示すアイコン(Disabledアイコン ) が表示されます。無効になったブロックを使用する場合、常にその値は「値なし」となります。


( )という名前のデータベース

指定した名前のデータベースを得ます。
名前に該当するデータベースが存在しない場合、「値なし」となります。

⚠️ このブロックは、「( )で[ ▼]とき[ ▼]」ブロックに設定することはできません。

全データベースのリスト

全てのデータベースを項目として含むリストを作ります。
項目の順序は、データベース一覧画面やツールボックスで表示される順序と同様です。


グループ( )内の全データベースのリスト

指定したグループ名のグループに属する全てのデータベースのリストを作ります。
項目の順序は、データベース一覧画面やツールボックスで表示される順序と同様です。

  • グループ名として空文字列を指定すると、基本グループに属する全データベースのリストを作ります。
  • 空文字列以外の文字列(または数値)を指定すると、該当する名前のグループに属する全データベースのリストを作ります。
  • 指定した名前のグループが存在しない場合、値なしとなります。

( )の( )行目

データベースから、指定位置の行を取り出します。

  • 指定位置に該当する行がある場合は、行(レコード)を作ります。
  • 指定位置に該当する行がない場合は、「値なし」となります。

( )で( )列が( )の行

データベースの指定された列が、指定の値になった行を検索し、1つだけ取り出します。

  • 検索は行番号1から開始します。
  • 該当する行がある場合は、行(レコード)を作ります。
  • 該当する行がない場合は、「値なし」となります。

( )で( )列が( )の行リスト

データベースの指定された列が、指定の値になった行を全て取り出し、リストを作ります。

  • 検索は行番号1から開始します。
  • 該当する行がある場合は、行(レコード)のリストを作ります。
  • 該当する行がない場合は、空リスト(長さ0のリスト)を作ります。

( )で( )列が( )の行番号

データベースの指定された列が、指定の値になった行を1つだけ検索し、行番号を得ます。

  • 検索は行番号1から開始します。
  • 該当する行がある場合は、行番号となります。
  • 該当する行がない場合は、「値なし」となります。

( )で( )列が( )の行番号リスト

データベースの指定された列が、指定の値になった行を全て検索し、行番号のリストを作ります。

  • 検索は行番号1から開始します。
  • 該当する行がある場合は、行番号のリストを作ります。
  • 該当する行がない場合は、空リスト(長さ0のリスト)を作ります。

( )の行数

データベースの行数を得ます。


( )の列名リスト

データベースの列名のリストを作ります。


( )の[ ▼]

データベースの各種設定値を得ます。

  • ドロップダウンで「名前」を選択した場合、データベースの名前を得ます。
  • ドロップダウンで「属するグループ名」を選択した場合、属するグループの名前を得ます。 基本グループに属する場合、空文字列となります。

行(レコード)

レコード)は、列名を指定して値を入れることができる入れ物です。
列名は文字列だけを使用できます。

行(レコード)は、データベースから行を取り出すときに利用しますが、 データベースからは独立したデータです。

  • データベースには、文字列または数値だけを入れることができますが、行(レコード) の値には、全ての型の値を入れることができます。
  • 列名と値の組み合わせは、1つの行に0個~いくつでも設定することができます。
    取り出したデータベースの列名ではない列も設定することができます。
  • データベースから行を取り出す以外にも、列名と値が1つもない行(空行)を作ることが できます。
  • データベースから取り出した行に設定するだけでは、データベースを変更を反映することは できません。更新した行を反映させるためには、「( )の( )行目を( )で更新する」ブロックを使用して下さい。

💡 変数に行をセットする場合、行そのものではなく、実際の行のある場所だけ (参照)を記憶します。そのため、その変数を別の変数に再度セットすれば、2つの変数は 同じ場所の行を参照している状態になります。

例えば、

(変数1)に (新しい空行)をセットする
(変数2)に (リスト変数1)をセットする
(変数2)の(くま)列に(食肉目クマ科)を設定する
(変数2)の(りす)列に(ネズミ目リス科)を設定する

とした場合、2つの変数(「変数1」「変数2」)の内容は、 同じ場所を参照しているため、共に{ くま: 食肉目クマ科, りす: ネズミ目リス科 }となります。

👉 「( )=( )」ブロックは、リストや行(レコード)を比較する場合、 内容が一致するかではなく、2つの値が同じ場所を指しているかを判定します。 (等価性判定ルール参照)

ℹ️ Javascript言語など、他のコンピューター言語をご存じの型へ

くまりすの「行(レコード)」は、他のコンピューター言語でのディクショナリ、 連想配列、マップ、ハッシュ、レコード、JavascriptでいうところのObject型、etc. と非常に色々な呼び方をされている概念/データ構造と類似のものです。


新しい空行

列名・値が1つもない、新しい行(レコード)を作ります。


( )の( )列

行(レコード)から、指定された列名に設定された値を得ます。

指定された列名が存在しない場合、「値なし」となります。


( )の( )列に( )を設定する

行(レコード)に、指定された列名と値を設定します。

💡 このブロックは、元の行(レコード)に設定を行います。新しい行(レコード)を作りません。

( )から( )列を削除する

行(レコード)から、指定された列名とその値を削除します。

💡 このブロックは、元の行(レコード)から削除します。新しい行(レコード)を作りません。

( )の列名リスト

行(レコード)に設定された、全ての列名のリストを作ります。


行の追加・更新・削除


( )に( )を追加する

データベースの末尾に、指定された行(レコード)を追加します。

  • 行(レコード)の列名とデータベースの列名を照合し、一致する列名がある場合は、行(レコード)の値を設定します。ただし、行(レコード)の値が文字列・数値ではない場合、空文字列を設定します。
  • データベースの列名と一致する行(レコード)の列名がない場合、空文字列を設定します。

データベースに行を追加したとき、「( )で[ ▼]とき[ ▼]」ブロックで指定したデータベースの行追加を監視していれば、そのブロックを呼び出します。


( )の( )行目に( )を挿入する

データベースの指定された位置に、指定された行(レコード)を挿入します。

  • 行(レコード)の列名とデータベースの列名を照合し、一致する列名がある場合は、行(レコード)の値を設定します。ただし、行(レコード)の値が文字列・数値ではない場合、空文字列を設定します。
  • データベースの列名と一致する行(レコード)の列名がない場合、空文字列を設定します。

データベースに行を挿入したとき、「( )で[ ▼]とき[ ▼]」ブロックで指定したデータベースの行追加を監視していれば、そのブロックを呼び出します。


( )の( )行目を( )で更新する

データベースの指定された位置の行を、指定された行(レコード)で更新します。

  • 行(レコード)の列名とデータベースの列名を照合し、一致する列名がある場合は、行(レコード)の値を設定します。ただし、行(レコード)の値が文字列・数値ではない場合は更新しません。
  • データベースの列名と一致する行(レコード)の列名がない場合、更新しません。

データベースを更新したとき、「( )で[ ▼]とき[ ▼]」ブロックで指定したデータベースの更新を監視していれば、そのブロックを呼び出します。


( )の( )行目( )列を( )にする

データベースの、指定された位置の行の、指定された列を、指定された値で更新します。

値が文字列・数値ではない場合、更新しません。

データベースを更新したとき、「( )で[ ▼]とき[ ▼]」ブロックで指定したデータベースの更新を監視していれば、そのブロックを呼び出します。


( )の( )行目を削除する

データベースの、指定された位置の行を削除します。

データベースを更新したとき、「( )で[ ▼]とき[ ▼]」ブロックで指定したデータベースの行削除を監視していれば、そのブロックを呼び出します。


( )で[ ▼]とき[ ▼]

指定したデータベースを監視し、追加(挿入含む)・更新・削除が発生したとき、後続のブロックの処理を開始します。

後続のブロックでは、「追加/更新/削除された行番号」ブロックにより、該当する行番号を得ることができます。

「実行する」と「並列実行する」の動作の違いについては、『「実行する」と「並行実行する」の違いについて』を参照してください。


追加/更新/削除された行番号

( )で[ ▼]とき[ ▼]」ブロックに続く処理で、追加・更新・削除が発生した行番号を得ます。