错误1064(42000)您的SQL语法有错误

时间:2016-04-08 15:28:20

标签: sql sql-server

double testClass::getX(double lon, int width)
{
    // width is map width
    double x = fmod((width*(180+lon)/360), (width +(width/2)));

    return x;
}

double testClass::getY(double lat, int height, int width)
{
    // height and width are map height and width
    double PI = 3.14159265359;
    double latRad = lat*PI/180;

    // get y value
    double mercN = log(tan((PI/4)+(latRad/2)));
    double y     = (height/2)-(width*mercN/(2*PI));
    return y;
}

它说我需要

  

检查正确的语法,在第2行使用near varchar(20)NOT NULL。

我该如何解决这个问题?

2 个答案:

答案 0 :(得分:0)

CREATE TABLE Artist 
(
  ArtistName varchar(20), 
  BirthDate date, 
  DeathDate date, 
  ADescription varchar(100), 
  CONSTRAINT ArtistKey PRIMARY KEY (ArtistName)
)

在定义哪个列具有键时,不要再次重复列数据类型。使用SQL-Server - 没有text(100)数据类型。

答案 1 :(得分:0)

CREATE TABLE Artist
  (
    ArtistName VARCHAR(20),
    BirthDate DATE,
    DeathDate DATE,
    ADescription varchar(100),
    CONSTRAINT ArtistKey PRIMARY KEY (ArtistName ));

Artistname已经定义,主键是唯一的而不是null,因此我们不需要具体。