如何更改SQL-SERVER表列名称编码?

时间:2017-04-02 03:27:51

标签: php sql-server encoding laravel-5.4

我正在使用Laravel 5.4创建日语网站的项目。

数据库是SQL-SERVER 2014, 几乎所有表格中的列名都是日文。

问题是 在结果中,Laravel从SQL-SERVER中的那些表中检索, 列名称在SJIS中,而表格内容为UTF-8。

Laravel是否可以将这些SJIS列名序序化为模型属性而不会损害UTF-8内容?

或者是否可以在SQL-SERVER中更改列名的编码?

谢谢。

[增订] 对不起。这是返回的一部分。

object(Illuminate\Database\Eloquent\Collection)#226 (1) {
  ["items":protected]=>
  array(1) {
    [0]=>
    object(App\Foo)#233 (24) {
      ["table":protected]=>
      string(7) "Foo"
      ["fillable":protected]=>
      array(2) {
        [0]=>
        string(9) "コード"
        [1]=>
        string(6) "部門"
      }
      ["connection":protected]=>
      NULL
      ["primaryKey":protected]=>
      string(2) "id"
      ["keyType":protected]=>
      string(3) "int"
      ["incrementing"]=>
      bool(true)
      ["with":protected]=>
      array(0) {
      }
      ["perPage":protected]=>
      int(15)
      ["exists"]=>
      bool(true)
      ["wasRecentlyCreated"]=>
      bool(false)
      ["attributes":protected]=>
      array(8) {
        ["�R�[�h"]=>
        string(2) "11"
        ["����"]=>
        string(15) "日本語テスト"
        ["����"]=>
        string(24) "テスト"
        ["������"]=>
        string(4) "70.0"
        ["�啪��"]=>
        string(2) "01"
        ["������"]=>
        string(2) "01"
        ["����"]=>
        string(2) "01"
        ["�ŗ�"]=>
        string(1) "8"
      }
      ["original":protected]=>
      array(8) {
        ["�R�[�h"]=>
        string(2) "11"
        ["����"]=>
        string(15) "日本語test"
        ["����"]=>
        string(24) "アイウエオ"
        ["������"]=>
        string(4) "70.0"
        ["�啪��"]=>
        string(2) "01"
        ["������"]=>
        string(2) "01"
        ["����"]=>
        string(2) "01"
        ["�ŗ�"]=>
        string(1) "8"
      }
      ["casts":protected]=>
      array(0) {
      }
      ["dates":protected]=>
      array(0) {
      }
      ["dateFormat":protected]=>
      NULL
      ["appends":protected]=>
      array(0) {
      }
      ["events":protected]=>
      array(0) {
      }
      ["observables":protected]=>
      array(0) {
      }
      ["relations":protected]=>
      array(0) {
      }
      ["touches":protected]=>
      array(0) {
      }
      ["timestamps"]=>
      bool(true)
      ["hidden":protected]=>
      array(0) {
      }
      ["visible":protected]=>
      array(0) {
      }
      ["guarded":protected]=>
      array(1) {
        [0]=>
        string(1) "*"
      }
    }
  }
}

等属性中
["����"]=>
string(15) "日本語テスト"

“”

在SJIS中,无法转换为符合标准。

“日本语テスト”

是UTF-8,可读。

1 个答案:

答案 0 :(得分:0)

查看排序规则,您可以按数据库和每列应用它 https://docs.microsoft.com/en-us/sql/t-sql/statements/collations