並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 60件

新着順 人気順

insertの検索結果1 - 40 件 / 60件

タグ検索の該当結果が少ないため、タイトル検索結果を表示しています。

insertに関するエントリは60件あります。 mysqldbMySQL などが関連タグです。 人気エントリには 『Bulk insertでも20時間以上かかっていたMySQLへのインサート処理を1時間以内にする - エムスリーテックブログ』などがあります。
  • Bulk insertでも20時間以上かかっていたMySQLへのインサート処理を1時間以内にする - エムスリーテックブログ

    この記事はエムスリー Advent Calendar 2022の30日目の記事です。 前日は id:kijuky による チームメンバーのGoogleカレンダーの休暇予定一覧をスプレッドシート+GASで作った でした。 AI・機械学習チームの北川(@kitagry)です。 今回はMySQLへのインサートを20倍以上高速化した話について書きます。 仕事をちゃんとしてるか見張る猫 TL; DR はじめに 今回のテーブル バイナリログを無効化する 追試 LOAD DATA INFILE 追試 テーブルの正規化 インデックスを一時的に剥がす まとめ We are hiring!! TL; DR バイナリログをオフにする LOAD DATA INFILEを使う インデックスを一時的に消す はじめに AI・機械学習チームではサイトトップからアプリに至るまで多くの推薦システムがあります。 そこでは推薦ロ

      Bulk insertでも20時間以上かかっていたMySQLへのインサート処理を1時間以内にする - エムスリーテックブログ
    • MySQLに初めてINSERTするとアクセスが発生するファイルは何かという質問をどう調べるのか - oranie's blog

      yokuo825さんのカッコいいインタビュー記事を t.co 読んで、この部分ですね ──例えばどのような話をしましたか? 「インストールされたばかりのMySQLがあるとして、特定テーブルに1件のレコードを最初にINSERTした場合、アクセスが発生するファイルとその理由をすべて教えてください」と質問されたのを覚えています。 具体的にどのような理由でどのファイルにアクセスするか、一連の流れを片っ端から答えていくと、彼らがすごく楽しそうにしてくれて。「そうか、LINEの環境だと○○の設定が最初から○○になっているので、そのファイルへのアクセスは考えていなかったです。確かにそれもありますね」などと答えてくれました。 でこんなツイートしたんですが 全国のDBAは「特定テーブルに1件のレコードを最初にINSERTした場合、アクセスが発生するファイルとその理由をすべて教えてください」これ明日から職場で

        MySQLに初めてINSERTするとアクセスが発生するファイルは何かという質問をどう調べるのか - oranie's blog
      • MySQL InnoDBにおけるPKにUUIDを使ったINSERTのパフォーマンスの調査 - CubicLouve

        下記の記事を見て、PKにUUIDを使った際に内部的にどうなっているのかを確認してみました kccoder.com 比較対象として、PKにULIDを使った場合も調べてみました。 github.com ULIDはUUIDと互換性がある、ソート可能な識別子です。 MySQLのバージョン % mysql --version mysql Ver 8.0.19 for osx10.14 on x86_64 (Homebrew) スキーマ mysql> SHOW CREATE TABLE innodb_auto_increment\G *************************** 1. row *************************** Table: innodb_auto_increment Create Table: CREATE TABLE `innodb_auto_incr

          MySQL InnoDBにおけるPKにUUIDを使ったINSERTのパフォーマンスの調査 - CubicLouve
        • GitHub - samwho/spacer: CLI tool to insert spacers when command output stops

          You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

            GitHub - samwho/spacer: CLI tool to insert spacers when command output stops
          • MySQL/Aurora/TiDBロック入門 – 第4回 INSERTを止めるインテンションロック【解説動画付】|技術ブログ|北海道札幌市・宮城県仙台市のVR・ゲーム・システム開発 インフィニットループ

            MySQL/Aurora/TiDBロック入門 – 第4回 INSERTを止めるインテンションロック【解説動画付】 MySQL とその互換 DB のロックの挙動を紹介する入門シリーズ、第4回はギャップロックとインテンションロックによって INSERT をブロックする仕組みについて解説します。 第1回 トランザクション分離レベル で解説したように、MySQL の特徴でもある REPEATABLE READ によるファントムリードの防止に関わっているところですので、ぜひお手元でも観察してみてください! ★ 第1回 トランザクション分離レベル ★ 第2回 ロックモニターの読み方 ★ 第3回 ロック読取りも SELECT は止められない ★ 第4回 INSERT を止めるインテンションロック ★ 第5回 WHERE 条件と違うロック読取り ★ 第6回 performance_schema ★ 第7回

              MySQL/Aurora/TiDBロック入門 – 第4回 INSERTを止めるインテンションロック【解説動画付】|技術ブログ|北海道札幌市・宮城県仙台市のVR・ゲーム・システム開発 インフィニットループ
            • You now can use a SQL-compatible query language to query, insert, update, and delete table data in Amazon DynamoDB

              You now can use PartiQL (a SQL-compatible query language)—in addition to already-available DynamoDB operations—to query, insert, update, and delete table data in Amazon DynamoDB. PartiQL makes it easier to interact with DynamoDB and run queries in the AWS Management Console. Because PartiQL is supported for all DynamoDB data-plane operations, it can help improve the productivity of developers by e

                You now can use a SQL-compatible query language to query, insert, update, and delete table data in Amazon DynamoDB
              • 【MySQL】UPDATE・DELETE・INSERT実行後に処理件数を取得する方法 - Qiita

                UPDATE・DELETE・INSERT実行後に出力されるQuery OK, 1 row affectedの件数を取得する方法です。 mysql> UPDATE animals SET name = 'cat' WHERE name = 'lion'; Query OK, 1 row affected (0.00 sec) Rows matched: 1 Changed: 1 Warnings: 0 SQLとPHP、2種類の方法を説明します。 SQLで取得する ROW_COUNT()関数で取得できます。 必ずステートメント(UPDATE、DELETE、INSERTなどの実行単位)の完了直後に実行してください。 ROW_COUNT()の使い方 SELECT ROW_COUNT();を実行します。 -- UPDATE mysql> UPDATE animals SET name = 'dog'

                  【MySQL】UPDATE・DELETE・INSERT実行後に処理件数を取得する方法 - Qiita
                • 【データ基盤構築/AWS Lambda】Pythonを使ってSnowflakeのデータをRDSにinsertする - Qiita

                  import sys import json import boto3 import ast import os import snowflake.connector import pymysql from snowflake.connector import DictCursor from sqlalchemy import create_engine from sqlalchemy.sql import text from datetime import datetime def lambda_handler(event, context): # 今日の日付とSQLを実行する日時を変数で用意 today = datetime.now() updated_at_str = datetime.strftime(today, '%Y-%m-%d %H:%M:%S') ## Snowflake

                    【データ基盤構築/AWS Lambda】Pythonを使ってSnowflakeのデータをRDSにinsertする - Qiita
                  • 『AmecareとInsert Textを併用してブログを書く時間を10分短縮する方法』

                    WordPressでホームページ作成講座ワードプレスを使えば、ウェブサイトの構築は簡単に出来ますが、インストールをした直後というのは、どこから手を付けて良いのか分らないという初心者の方も多く見受けられます。テーマのインストールや設定などを中心とした情報配信をしてます。 Inert Textは、定型文や HTMLなどを右クリックだけで入れられるようになる便利ツールです。 アメブロで記事を書かれている方は、Amecareの方が便利だと思われる方もいるでしょう。 ただ、そうとばかり言ってられない状況になるかもしれません。 もし、ある日突然にAmecareが使えなくなったとしたらどうしますか? そんな時に代替になるものがなければたちまちに困ってしまいます。 ちょっと使い方が違うので登録の方法や使い方を覚えてください。 AmecareとInert Textは、併用して使って記事を書く時間を10分は楽

                      『AmecareとInsert Textを併用してブログを書く時間を10分短縮する方法』
                    • GitHub - elbywan/zap: Another [insert blazing fast synonyms] JavaScript package manager

                      You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                        GitHub - elbywan/zap: Another [insert blazing fast synonyms] JavaScript package manager
                      • ASCII table and history (or, why does Ctrl+i insert a Tab in my terminal?)

                        The binary representation has the most significant bit first (“big endian”). ASCII is 7-bit; because many have called encodings such as CP437, ISO-8859-1, CP-1252, and others “extended ASCII” some are under the misapprehension that ASCII is 8-bit (1 byte). To understand why Control+i inserts a Tab in your terminal you need to understand ASCII, and to understand ASCII you need know a bit about its

                        • How to Insert Emojis in Excel

                          Emojis make your messages fun and expressive. But have you ever tried using emojis to make your Excel data more visually appealing? Excel allows you to add a touch of personality to your cells, and make working with data less boring. There are various methods to insert emojis in Excel, including emoji keyboards, formulas, pasting emojis, and even inserting them as images. Let's explore how you can

                            How to Insert Emojis in Excel
                          • MySQLの基本構文③Insert文:新しくテーブルに値を挿入する。

                            前回は、SQL文の4大コマンド1つ、SELECT文の解説を行いました。 今回は、SQL文の4大コマンドの中の1つ、『Insert文』について解説を行います。 Insertは直訳すると、挿入となります。 その名の通り、データテーブルにデータを挿入するコマンドです。 データベースを取り扱っていると、 例えば装置で取ったデータをデータベースに上げることはよくある話です。 そんな時データをデータテーブルに挿入するのがこのInsert文です。 使い方をマスターしてInsert文を使いこなしてみましょう。 自己紹介 サラリーマンしてます。 主に工場(生産現場)で使用する検査装置のアプリケーション開発してます。 ヒトの作業を自動化して簡略化するアプリケーションを日々開発中。 2022年5月に転職。現役バリバリの技術者です。 現在は超大手企業の新規事業分野で装置の研究・開発をしています。

                              MySQLの基本構文③Insert文:新しくテーブルに値を挿入する。
                            • Fixing bug 109595 makes MySQL almost 4X faster on the Insert Benchmark

                              Fixing bug 109595 makes MySQL almost 4X faster on the Insert Benchmark MySQL 8.0.35 includes a fix for bug 109595 and with that fix the QPS is almost 4X larger on the read+write benchmark steps compared to MySQL 8.0.34. Thank you to MySQL for fixing this quickly. I reported the bug in January of 2023. I have been aware of the performance problem for years, but didn't spend time debugging it until

                                Fixing bug 109595 makes MySQL almost 4X faster on the Insert Benchmark
                              • Insertキーなど削除で横幅を抑えた99キー配列メカニカルキーボード

                                  Insertキーなど削除で横幅を抑えた99キー配列メカニカルキーボード
                                • GitHub - nuxodin/dialog-polyfill: "insert and thats it"-dialog-polyfill

                                  You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                                    GitHub - nuxodin/dialog-polyfill: "insert and thats it"-dialog-polyfill
                                  • [新機能]Amazon Redshift Spectrum がついにCTASとINSERT INTOをサポートしたので実際に試してみました! | DevelopersIO

                                    [新機能]Amazon Redshift Spectrum がついにCTASとINSERT INTOをサポートしたので実際に試してみました! データアナリティクス事業本部の石川です。クラスタバージョン1.0.15582から 「クエリの結果から外部テーブルを作成する(CTAS)」と「追加するテーブルの作成」が、Redshift Spectrumでも利用できるようになりました。早速試してみます! CTASに関してはこれまでローカルテーブルへは出来ましたが外部テーブルへのCTASでの書き込みができるようになったのがポイントです。今まで同じことをしようとUnload+Create external tableと2ステップで行う必要がありました。 — Junpei Ozono (@jostandard) June 8, 2020 準備 検証用にサンプルデータのCSVファイルを用いて、外部スキーマと外

                                      [新機能]Amazon Redshift Spectrum がついにCTASとINSERT INTOをサポートしたので実際に試してみました! | DevelopersIO
                                    • SQL Server で BULK INSERT をつかってcsvなどのデータを取込む方法 - Qiita

                                      BULK INSERT とは csvなどのデータを、テーブルにインポートできるコマンドです。 BULK INSERT (Transact-SQL) - SQL Server | Microsoft Docs SQL Server で、ユーザーが指定した形式で、データベース テーブルまたはビューにデータ ファイルをインポートします。 データのインポートはウィザードを使っても行えるのですが、コマンドを使えばストアドの処理に記載したり自動化ができるので便利です。 構文 おおまかな構文は以下のようなかんじです。

                                        SQL Server で BULK INSERT をつかってcsvなどのデータを取込む方法 - Qiita
                                      • LaravelでDBにデータを保存する方法。createとinsertの違いなど - Kattsu Sandbox

                                        はじめに本記事の内容は Laravel5.5 で検証しています。 DB にデータを保存するDB にデータを保存する方法は、大きく分けて Eloquent でモデルインスタンスを作成して保存する方法と、SQL で直で保存する方法の 2 通りあります。 Eloquent でモデルインスタンスを作成して保存する方法はさらにいくつかの方法に分かれます。 1. create メソッド // fillableかguardedのどちらかを指定する必要あり protected $fillable = ['name']; // protected $guarded = ['']; $flight = App\Flight::create(['name' => 'Flight 10']); モデルクラスから create メソッドを呼ぶことで、インスタンスの作成 → 属性の代入 → データの保存を一気通貫でや

                                        • 【SQL】膨大なINSERT文をとにかく楽して生成したい - Qiita

                                          Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

                                            【SQL】膨大なINSERT文をとにかく楽して生成したい - Qiita
                                          • SQL入門ガイド: INSERT、UPDATE、DELETEの基本から応用まで完全解説|Yuu's Memo

                                            テーブル名: users 列: id (INT, 主キー), name (VARCHAR), age (INT), email (VARCHAR) テーブル名: orders 列: id (INT, 主キー), customer_id (INT), product_id (INT), quantity (INT), total_amount (DECIMAL) テーブル名: products 列: id (INT, 主キー), name (VARCHAR), price (DECIMAL) テーブル名: customers 列: id (INT, 主キー), name (VARCHAR), age (INT), address (VARCHAR) -- usersテーブルを作成 CREATE TABLE users ( id INT PRIMARY KEY, name VARCHAR(50

                                              SQL入門ガイド: INSERT、UPDATE、DELETEの基本から応用まで完全解説|Yuu's Memo
                                            • MySQLで「無ければINSERT、あればUPDATE」を実現する方法 - Mobile Factory Tech Blog

                                              こんにちは、駅奪取エンジニアの id:kimkim0106(旧: id:kaoru_k_0106)です。 今回の記事は、駅奪取でテーブルにレコードが「無ければ INSERT、あれば UPDATE」(いわゆる UPSERT)をする箇所で Duplicate entry が出ていたのを修正したり、未然に防ぐ実装をしたときに得られた知見です。 このような処理はよく使われますが、うまく実装しないとエラーが発生したりパフォーマンスの問題が生じたりします。 この記事では、自分が試した方法のメリット・デメリットについて説明します。 目次 前提条件 Duplicate entry とは 1. Duplicate entry が出たらトランザクション自体をやり直す 2. INSERT ... ON DUPLICATE KEY UPDATE 3. とりあえず INSERT して Duplicate entry

                                                MySQLで「無ければINSERT、あればUPDATE」を実現する方法 - Mobile Factory Tech Blog
                                              • VSCode VimでInsertモードからNormalモードへ戻った時、WindowsのIMEをオフにする方法

                                                VSCode VimでInsertモードからNormalモードへ戻った時、WindowsのIMEをオフにする方法 2019.08.01 2020.11.29 Vim im-select, IME, vim, VSCode

                                                  VSCode VimでInsertモードからNormalモードへ戻った時、WindowsのIMEをオフにする方法
                                                • MySQLのINSERT ... ON DUPLICATE KEY UPDATEでレコードの挿入/更新を便利に実行 - Qiita

                                                  MySQLのINSERT ... ON DUPLICATE KEY UPDATEでレコードの挿入/更新を便利に実行JavaMySQLSQLDatabase 概要 MySQLのINSERT文には"INSERT ... ON DUPLICATE KEY UPDATE"という構文があります。レコードを挿入または重複があった場合は更新したい場合に、INSERT文とUPDATE文を別個に書くよりはるかに便利になります。 本記事ではそんな"INSERT ... ON DUPLICATE KEY UPDATE"の使い方、便利なポイント、その他仕様についてまとめます。 準備 以下のようなテーブルを使います。 select version(); +-----------+ | version() | +-----------+ | 8.0.17 | +-----------+ CREATE TABLE us

                                                    MySQLのINSERT ... ON DUPLICATE KEY UPDATEでレコードの挿入/更新を便利に実行 - Qiita
                                                  • SQLServerのMERGEでINSERT/UPDATE/DELETEを1回のSQLで実行する

                                                    あるテーブルやビューに既に対象のレコードが存在している場合はUPDATE(更新)し、存在していない場合はINSERT(挿入)する。 データベースを使ったアプリケーションを開発していると、よく遭遇するケースの処理です。 こんな場合はどのように処理を行えばよいでしょう。 一旦SELECTを実行して対象のレコードを取得して、データの取得有無の判断をIF文で分岐し、レコードが取得できればUPDATEを実行、レコードが取得できなければINSERTを実行する。 単純に考えれば上記のような処理になります。しかし、上記の処理はSELECTという処理と、UPDATEまたはINSERTという処理の2つの処理に分かれており、1回のSQLで実行することはできません。 SQLServerにはある条件を満たすデータが存在している場合はUPDATEやDELETEの処理、データが存在していない場合はINSERTの処理を行

                                                      SQLServerのMERGEでINSERT/UPDATE/DELETEを1回のSQLで実行する
                                                    • vs code で連続した数字を入力するには、Insert Numbers エクステンションが便利

                                                      連番を入れたいとき困りませんか? vs codeエディタには、連続した数字を入力するのに便利なExtensionがあります。 Insert Numbers です。 下図のように連番を作ることができます。下図では3桁でゼロパディング(2桁未満は0で埋める)、また、4から2とばしの数字との指定です。このように表示や数字は指定ができます。 Insert Numbers Extensionのインストールの手順 vs codeを開いたら、extension メニューを開いて、Insert Numbersで検索してInstallしましょう。 下図の説明です。 ①でExtensionメニューを開きます。 ②の検索ウィンドウにinsert numbers と入力します。 ③Insert Numbers をクリックして開きます。 ④Install ボタンを押してインストールします。 Insert Numbe

                                                        vs code で連続した数字を入力するには、Insert Numbers エクステンションが便利
                                                      • [解決!Python]リスト(配列)に要素を追加するには(+演算子/+=演算子/append/extend/insertメソッド)

                                                        mylist = list(range(5)) print(mylist)  # [0, 1, 2, 3, 4] # +演算子によるリストの結合(リストの末尾へのリストの追加) tmp = mylist + [5, 6]  # +演算子では新しいリストが作成される print(tmp)  # [0, 1, 2, 3, 4, 5, 6] print(mylist)  # [0, 1, 2, 3, 4] mylist = mylist + 5  # TypeError:リストはリスト以外と結合できない mylist = mylist + (5, 6)  # TypeError:リストはリスト以外と結合できない # +=演算子によるリスト末尾への要素の追加 mylist += [5]  # +=演算(累算代入)では元のリストが変更される print(mylist)  # [0, 1, 2, 3,

                                                          [解決!Python]リスト(配列)に要素を追加するには(+演算子/+=演算子/append/extend/insertメソッド)
                                                        • activerecord-importを利用して無効なデータを無理やりINSERTする - かみぽわーる

                                                          activerecord-importと:on_duplicate_key_ignoreオプションを組み合わせるとカラム定義の範囲外の値であっても無理やりINSERTすることができます。 # frozen_string_literal: true require "bundler/inline" gemfile(true) do source "https://rubygems.org" git_source(:github) { |repo| "https://github.com/#{repo}.git" } gem "activerecord", "6.1.0" gem "activerecord-import" gem "mysql2" end require "active_record" require "logger" ActiveRecord::Base.establish

                                                            activerecord-importを利用して無効なデータを無理やりINSERTする - かみぽわーる
                                                          • CockroachDB に 1レコード INSERT した時にアクセスされるファイルのお話 - こたつ&&みかん&&でーたべーす

                                                            最近話題 (?) の「DB に 1レコード INSERT した時にアクセスされるファイル」について、CockroachDB で検証してみました。 元ネタ 元ネタは以下の Blog です。 MySQLエキスパートyoku0825が目指す、DBAとしての未来像 「インストールされたばかりのMySQLがあるとして、特定テーブルに1件のレコードを最初にINSERTした場合、アクセスが発生するファイルとその理由をすべて教えてください」 カジュアルとはいえ、面談で急にこれを聞かれたらテンパる自信が有ります。 環境 今回は以下の環境 (Docker を利用したローカルの Secure クラスタ) で検証しています。 バージョン Ubuntu : 20.04 Docker : 20.10.8 CockroachDB : 21.1.7 Container Image : cockroachdb/cockro

                                                              CockroachDB に 1レコード INSERT した時にアクセスされるファイルのお話 - こたつ&&みかん&&でーたべーす
                                                            • BigQueryへのInsert パターン比較:ストリーミング、DML、バルクロード:CData BigQuery Driver - CData Software Blog

                                                              こんにちは。CData Software Japan エンジニアの宮本です。 今回は BigQuery へデータを登録する際の「ストリーミングインサート、DML、バルクロード」の 3つのインサート方法についてみていきたいと思います。 それぞれのInsert パターンについて ストリーミングインサート DML バルクロード Insert パターン比較 CData BigQuery Driver で試してみる JDBC Driver で Insert 方法の指定 それぞれのリクエスト内容をみてみる ストリーミングインサート DML バルクロード CData BigQuery JDBC Driver でパフォーマンス比較 おわりに それぞれのInsert パターンについて ストリーミングインサート ストリーミングインサートは大量データを早く挿入する場合に最適な方法です。 cloud.google

                                                                BigQueryへのInsert パターン比較:ストリーミング、DML、バルクロード:CData BigQuery Driver - CData Software Blog
                                                              • PostgreSQLの色んなINSERTの仕方

                                                                Datum insert_executor(PG_FUNCTION_ARGS) { Relation rel; Oid nspid, relid; EState *estate; ResultRelInfo *relinfo; RangeTblEntry *rte; TupleTableSlot *slot; /* Open table "test" */ nspid = get_namespace_oid("public", false); relid = get_relname_relid("test", nspid); if (!OidIsValid(relid)) elog(ERROR, "table \"%s\" does not exist", "test"); rel = table_open(relid, RowExclusiveLock); /* Set up execu

                                                                • 第179回 SQLだけで複数のテーブルにinsertを行う方法 | gihyo.jp

                                                                  皆さんは、普段テーブルにレコードを追加する時にどういう方法を使っているでしょうか。プログラムを書いてORMから操作したり、SQLで直接DBに流し込んだり、さまざまな方法をとっていると思います。単一のテーブルの操作であればSQLでも良いけど、関係を持っているテーブルへの挿入があると困ってしまうのが、外部キーの扱いです。そういった場合はプログラムを用意して、外部キーを保存して、という方法を取る場合も多いと思いますが、今回はSQLでそれを何とかする方法を紹介してみたいと思います。 検証環境 今回はdockerで建てたMySQLを使用します。以下のコマンドでdockerを建ててローカルからアクセスをします。 % docker run --platform linux/x86_64 -p 3307:3306 -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:l

                                                                    第179回 SQLだけで複数のテーブルにinsertを行う方法 | gihyo.jp
                                                                  • うわっ...私のレコード追加、遅すぎ...?(爆速でINSERTする極意) - Qiita

                                                                    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

                                                                      うわっ...私のレコード追加、遅すぎ...?(爆速でINSERTする極意) - Qiita
                                                                    • Insertキーの使い道と無効化の方法 – トラブル解決法のまとめ

                                                                      「お父さん、パソコンのキーボードにあるInsertキーって、何するためのキーなの?」 「そりゃー、ほら、あれだ…インサートするキー?」 はい0点。 しかも「?」付いてるし!そんなんじゃ我が子の信頼失いますよ! とは言えこのInsertキー、「何するためのものなのか、正直よく分からん」という方、めちゃくちゃ多いです。あなただけじゃありません。 今回は普通の人には馴染みの薄いInsertキーにスポットを当て、 Insertキーの働き入力モードに関するトラブル解決法Insertキーを無効化したり、他のキーとして使う方法をご紹介します。 Insertキーの働き一言で言いましょう。Insertキーとは、文字入力の「挿入モード」と「上書きモード」を切り替えるキーです。 この説明で「子供が納得した!」という方は、自分がものすごく幸運だということを自覚しながらページを閉じてください。 ほとんどの方は「だか

                                                                        Insertキーの使い道と無効化の方法 – トラブル解決法のまとめ
                                                                      • SQL Server で特定テーブルに1件のレコードを最初にINSERTした場合、アクセスが発生するファイルを調べてみる at SE の雑記

                                                                        MySQLエキスパートyoku0825が目指す、DBAとしての未来像 を興味深く読ませていただいたのですが、記事の中の次の質問がとても面白い内容でした。 インストールされたばかりのMySQLがあるとして、特定テーブルに1件のレコードを最初にINSERTした場合、アクセスが発生するファイルとその理由をすべて教えてください MySQLに初めてINSERTするとアクセスが発生するファイルは何かという質問をどう調べるのか で MySQL についてまとめられていますが、SQL Server ではどのようになるのかまとめてみました。 SQL Server の公式ドキュメント SQL Server はソースコードが公開されていないので、基本動作については公式ドキュメントからどのような動作となるかを把握します。 SQL Server は、ARIES (Algorithms for Recovery and

                                                                        • Cloudflare Workersを使ってslackメッセージに特定のスタンプが押されたら、メッセージを変換してNotionのDBにINSERTするシンプルなbotを雑に作った。 - 何かやってみるブログ

                                                                          概要 ライブラリなど 実装 動作確認 概要 約2年前に下記の記事を書いたときに作った趣味のslack botを自分しかいないslackのワークスペースのあるチャンネルで動かしている。 www.takayasugiyama.com このbotはとあるサイトのあるページを1日一回スクレイピングして動画と画像とテキストを引っ張ってきてslackに投稿してくれているので、気になるサムネだったら動画を見て楽しんでいる。 2年間も動かしていると、たまにお気に入りで保存しておきたい動画が流れてくるがslackのメッセージが消えてしまったりしていてスクレイピング元に探しに行かないといけない事態になったりする。 なので、slackのメッセージにハートのスタンプを押したらNotionのDBに動画のurlなどを保存するようにするbotを作成した。 ライブラリなど botは使ったことがなかったCloudflare

                                                                            Cloudflare Workersを使ってslackメッセージに特定のスタンプが押されたら、メッセージを変換してNotionのDBにINSERTするシンプルなbotを雑に作った。 - 何かやってみるブログ
                                                                          • ActiveRecord の insert_all で発行されるSQLに ON DUPLICATE KEY UPDATE がある理由

                                                                            タイトルに書きたいことが長いとタイトル付けに困りますね。 今日は、「Ruby on Rails の ActiveRecord の insert_all で MySQL向けに発行されるSQLに ON DUPLICATE KEY UPDATE foo = foo が含まれている理由」について、知っておこう。(調べました) TL;DR Ruby on Rails の insert_all で発行されるSQLには ON DUPLICATE KEY UPDATE foo = foo が末尾に指定されている foo はどうやら INSERT INTO で登録先として指定している列の1番目 upsert_all に ON DUPLICATE KEY UPDATE が指定されているならまだしも、insert_all にこの指定があるのは感覚的に気持ち悪い 該当の実装部分はここ https://github

                                                                              ActiveRecord の insert_all で発行されるSQLに ON DUPLICATE KEY UPDATE がある理由
                                                                            • SQLBoilerでBulk Insertを実現する方法 - Qiita

                                                                              概要 この記事を書いている(2019/12/07)時点では、SQLBoilerに、Bulk Insert は実装されていません。 issueやPull Requestはいくつか上がっているようですが、内部に取り込まれる様子がありません。 おそらくその理由は、MySQL、Postgresなどの各種DBにうまく対応しつつ、Insertした複数のstructにIDを埋める、という用件を満たせないからだと推測されます。 (SQLBoilerでは、通常のInsertではInsert後にlast_insert_id を用いて、structのIDにマッピングするように実装されています) Bulk Insert が実装されていないORMは他にもあり、それらもほぼ同様の理由で導入が見送られていそうな気がします。 しかし、実務では、Bulk Insert を使いたい場面は多々発生します。 どうにかうまく、実現

                                                                                SQLBoilerでBulk Insertを実現する方法 - Qiita
                                                                              • unnest を使って楽に bulk insert する - eagletmt's blog

                                                                                プライベートでよく PostgreSQL を使っている人の MySQL 不便シリーズ。 ActiveRecord のような高機能な ORM あるいはクエリビルダを使っていると bulk insert するクエリをライブラリがいいかんじに組み立ててくれるが、そんな高級なライブラリを使わずにもっとシンプルなもので済ませたいことがある。 そんなときに bulk insert をしたくなった場合、クエリを組み立てて変数を bind して…… というのを自分でやるのは結構面倒である。 PostgreSQL だと配列型があり unnest() で配列を行に変換できるので、これと insert into select を組み合わせると bulk insert するクエリを簡単に組み立てられる。 eagletmt=> select unnest(array[1,2,3]) as x, unnest(arr

                                                                                  unnest を使って楽に bulk insert する - eagletmt's blog
                                                                                • MongoDB atomic "findOrCreate": findOne, insert if nonexistent, but do not update

                                                                                  as the title says, I want to perform a find (one) for a document, by _id, and if doesn't exist, have it created, then whether it was found or was created, have it returned in the callback. I don't want to update it if it exists, as I've read findAndModify does. I have seen many other questions on Stackoverflow regarding this but again, don't wish to update anything. I am unsure if by creating (of

                                                                                    MongoDB atomic "findOrCreate": findOne, insert if nonexistent, but do not update

                                                                                  新着記事