Connection to MSSQL Server

I am trying to connect to a mssql server,

As soon I want to generate the Connection in gii/model I get following error.

Can someone help me why I cannot get an Connection?

‘class’=>‘yii\db\Connection’,

        'dsn'=>'dblib:host=****;dbname=****',


        'username'=>'****',


        'password'=> '****',

Exception 'yii\base\InvalidParamException' with message 'Malformed UTF-8 characters, possibly incorrectly encoded.' 


in /var/www/portaltestyii/yii/vendor/yiisoft/yii2/helpers/BaseJson.php:132


Stack trace:

#0 /var/www/portaltestyii/yii/vendor/yiisoft/yii2/helpers/BaseJson.php(66): yii\helpers\BaseJson::handleJsonError(5)

#1 /var/www/portaltestyii/yii/vendor/yiisoft/yii2/helpers/BaseJson.php(88): yii\helpers\BaseJson::encode(Array, 271)

#2 /var/www/portaltestyii/yii/vendor/yiisoft/yii2-gii/components/ActiveField.php(71): yii\helpers\BaseJson::htmlEncode(Array)

#3 /var/www/portaltestyii/yii/vendor/yiisoft/yii2-gii/components/ActiveField.php(41): yii\gii\components\ActiveField->autoComplete(Array)

#4 /var/www/portaltestyii/yii/vendor/yiisoft/yii2/base/BaseObject.php(108): yii\gii\components\ActiveField->init()

#5 [internal function]: yii\base\BaseObject->__construct(Array)

#6 /var/www/portaltestyii/yii/vendor/yiisoft/yii2/di/Container.php(381): ReflectionClass->newInstanceArgs(Array)

#7 /var/www/portaltestyii/yii/vendor/yiisoft/yii2/di/Container.php(156): yii\di\Container->build('yii\\gii\\compone...', Array, Array)

#8 /var/www/portaltestyii/yii/vendor/yiisoft/yii2/BaseYii.php(349): yii\di\Container->get('yii\\gii\\compone...', Array, Array)

#9 /var/www/portaltestyii/yii/vendor/yiisoft/yii2/widgets/ActiveForm.php(313): yii\BaseYii::createObject(Array)

#10 /var/www/portaltestyii/yii/vendor/yiisoft/yii2-gii/generators/model/form.php(9): yii\widgets\ActiveForm->field(Object(yii\gii\generators\model\Generator), 'tableName')

#11 /var/www/portaltestyii/yii/vendor/yiisoft/yii2/base/View.php(332): require('/var/www/portal...')

#12 /var/www/portaltestyii/yii/vendor/yiisoft/yii2/base/View.php(250): yii\base\View->renderPhpFile('/var/www/portal...', Array)

#13 /var/www/portaltestyii/yii/vendor/yiisoft/yii2-gii/views/default/view.php(38): yii\base\View->renderFile('/var/www/portal...', Array)

#14 /var/www/portaltestyii/yii/vendor/yiisoft/yii2/base/View.php(332): require('/var/www/portal...')

#15 /var/www/portaltestyii/yii/vendor/yiisoft/yii2/base/View.php(250): yii\base\View->renderPhpFile('/var/www/portal...', Array)

#16 /var/www/portaltestyii/yii/vendor/yiisoft/yii2/base/View.php(152): yii\base\View->renderFile('/var/www/portal...', Array, Object(yii\gii\controllers\DefaultController))

#17 /var/www/portaltestyii/yii/vendor/yiisoft/yii2/base/Controller.php(384): yii\base\View->render('view', Array, Object(yii\gii\controllers\DefaultController))

#18 /var/www/portaltestyii/yii/vendor/yiisoft/yii2-gii/controllers/DefaultController.php(72): yii\base\Controller->render('view', Array)

#19 [internal function]: yii\gii\controllers\DefaultController->actionView('model')

#20 /var/www/portaltestyii/yii/vendor/yiisoft/yii2/base/InlineAction.php(57): call_user_func_array(Array, Array)

#21 /var/www/portaltestyii/yii/vendor/yiisoft/yii2/base/Controller.php(157): yii\base\InlineAction->runWithParams(Array)

#22 /var/www/portaltestyii/yii/vendor/yiisoft/yii2/base/Module.php(528): yii\base\Controller->runAction('view', Array)

#23 /var/www/portaltestyii/yii/vendor/yiisoft/yii2/web/Application.php(103): yii\base\Module->runAction('gii/default/vie...', Array)

#24 /var/www/portaltestyii/yii/vendor/yiisoft/yii2/base/Application.php(386): yii\web\Application->handleRequest(Object(common\models\core\ModifiedRequest))

#25 /var/www/portaltestyii/yii/mip/web/index.php(42): yii\base\Application->run()

#26 {main}

Hi Ian,

I’m not sure, but it might not be a problem with MSSQL. You might have some source file not encoded in UTF-8.

The file is utf8 converted.

I still have the Problem and don’t know why.

I am already connection to a other mssql Server and it works without any problems.

But just with this connection I have problems.

Nice greetings

Ian

What about the database table names and column names? Don’t they have non standard characters?

Tablename is

dbo.Webshop Users OERK NOE

The first Time I want to connect to the database, I get php Proxy error. As soon I want to go to the model generator I Get the Error of my first Post.




[Membership No_]

      ,[Valid from]

      ,[Valid to]

      ,[Name]

      ,[E-Mail]

      ,[Created at]

      ,[Modified at]

      ,[Processed at]

      ,[Processed]

Nice Greetings

Ian

I don’t have much experience in MSSQL. So I don’t think I can give you a good help on this.

But I would try with the column names without blank spaces (and hyphens). "Valid_from" instead of "Valid from" for example.

Thanks. but the Problem is I may not change the Column names :(

I hope you can somehow manage to write your ActiveRecord model manually without using Gii.

But, well, column names with blank space … I just have to pray your good luck. :)

For a MSSQL server database I wouldn’t use a PHP framework, I’d use ASP.NET with the razor language.