2009-05-06 8 views
8

Mam bazę danych SQL, która ma tabelę z polem ustawionym na "Tylko do odczytu", gdy patrzę na to za pośrednictwem programu Microsoft SQL Server Management Studio Express.Jak zmienić pole w bazie danych serwera SQL ustawionej na "Komórka tylko do odczytu"?

Potrzebuję ręcznie zmienić niektóre dane w tym polu, ale nie widzę żadnych właściwości, które można zmienić, które pozwolą mi to zmienić.

Czy muszę napisać skrypt SQL na stole, aby to zrobić, czy jest coś, czego mi brakuje?

+0

Dlaczego pole jest odczytywane/tylko, jeśli chcesz je zmienić? –

+0

@lassevk - nie jestem pewien, ponieważ początkowo nie ustawiłem bazy danych. Zasadniczo jest to tabela konfiguracji, która normalnie się nie zmienia. – cyberbobcat

Odpowiedz

7

Jaki jest typ danych pola? Możesz nie być w stanie "wpisać" go, jeśli jego typ danych ntext lub image oraz studio zarządzania nie poradzą sobie z jego wielkością.

W takim przypadku może nie być opcji, ale wykonać aktualizację w następujący sposób.

UPDATE TableName SET ColumnName = 'NewValue' WHERE PrimaryKeyId = PrimaryKeyValue 
+1

Typem danych jest "xml". – cyberbobcat

+2

To będzie problem. Xml jest złożonym typem danych, który trudno byłoby edytować w komórce. Obawiam się, że będziesz musiał to zrobić w instrukcji UPDATE. –

+0

OK, dziękuję za to - oddam to. – cyberbobcat

2

Pole jest najprawdopodobniej "tylko do odczytu", ponieważ zawiera obliczoną wartość.

W takim przypadku należy zmienić obliczenia w definicji tabeli, aby zmienić jej wartość.

+0

Nie widzę właściwości obliczania dla tego w SQL Server Management Studio Express ?? – cyberbobcat

+0

Po prostu przeczytałem w innym komentarzu, że typem pola jest XML. Może po prostu nie możesz edytować XML bezpośrednio w SQL Server Management Studio. – Tomalak

+0

Tak, wydaje mi się, że tak jest. Dzięki i tak. – cyberbobcat

1

Ten problem pojawi się, gdy ustawisz konkretne pole jako klucz podstawowy i ustawisz go na "Czy tożsamość" jest prawdziwe, co oznacza, że ​​pole będzie automatycznie zwiększane za każdym razem, gdy zostanie wstawione ... Lepiej sprawdzić, czy jest to automatyczne zwiększenie lub nie. Jeśli tak, zmień tę właściwość "Jest Idenitity" jako fałsz.

Powiązane problemy