質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Realm

RealmとはSQLiteやCore Dataに代わるモバイルデータベースです。iOSとAndroidの両方でサポートされています。

Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

Q&A

2回答

1414閲覧

swift3のデータベースについて

asuuuuuuuuu7

総合スコア16

Realm

RealmとはSQLiteやCore Dataに代わるモバイルデータベースです。iOSとAndroidの両方でサポートされています。

Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

0グッド

0クリップ

投稿2017/06/14 10:48

画像のようにデータベースを使用してラベルに表示するということをしているのですが、何故かエラーが出てしまいこのコードが記載されているページにすら飛ぶことができません。
このRealmの使用宣言方法で他のテスト用システムは使えたのに、このシステムは使うことができなくて困っております。
何かわかる方いましたらアドバイスをお願いします。

イメージ説明

イメージ説明

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

let realm = try! Realm().objects(hogehoge.self)

の場合は、自分も同様のエラーが出ます
直接は出来ないようで、

let realm = try! Realm() let data = realm.objects(hogehoge.self)

といった感じにしています

初心者なもので、理由は分かりませんが、恐らく、try!しているのはRealm()であってRealm().objects()ではないからだと思います

投稿2018/01/10 12:52

Kenelaoy

総合スコア50

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

exc_bad_instructionエラーですが、私自身は遭遇したことがなかったのでざっと調べてみたところ、
マイグレーションエラーによるものの可能性が高いようです。

具体的には(あくまで例えばの例となりますが)
「cosme_complete_dbにnameという1フィールドのみを持つレコードを保存した後、cosme_complete_dbの定義内容をname,name2の2フィールドに変更した」
ということが原因として考えられそうです。

取り急ぎこの問題を解決するには、
・試しに新しくcosme_complete_db.swiftを作り直して(new_cosme_complete_db.swiftなど)そこに保存するようにして正常に動作するか確認してみる(大丈夫そうならこちらに乗り換える)
・Realmデータベースのcosme_complete_dbクラスに現在存在するレコードを全て削除する
のどちらかになるかと思われます。

上記の方法が試せない状況(既にシステムが稼働しているなど)の場合は、
マイグレーション処理が必要になりますので、別途マグレーション方法について調査してみることをお勧めいたします。

投稿2017/06/21 05:07

Honma

総合スコア25

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問