how to move a 2d sprite

hello, i dont understand why my script to move is not working in c#

using UnityEngine;
using System.Collections;

public class Ctrl : MonoBehaviour
{
public float speed = 1.5f;

void Update ()
{
	if (Input.GetKey(KeyCode.LeftArrow))
	{
		transform.position += Vector3.left * speed * Time.deltaTime;
	}
	if (Input.GetKey(KeyCode.RightArrow))
	{
		transform.position += Vector3.right * speed * Time.deltaTime;
	}
	if (Input.GetKey(KeyCode.UpArrow))
	{
		transform.position += Vector3.up * speed * Time.deltaTime;
	}
	if (Input.GetKey(KeyCode.DownArrow))
	{
		transform.position += Vector3.down * speed * Time.deltaTime;
	}
}

}

Here is simple movement Script -
public float jumpHeight;
public float moveSpeed;
// Use this for initialization
void Start () {

}

// Update is called once per frame
void Update () {
	if(Input.GetKeyDown(KeyCode.Space)){
		GetComponent<Rigidbody2D>().velocity = new Vector2(GetComponent<Rigidbody2D>().velocity.x,jumpHeight);
		
	}
	if(Input.GetKey(KeyCode.D)){
		GetComponent<Rigidbody2D>().velocity = new Vector2(moveSpeed,GetComponent<Rigidbody2D>().velocity.y);
		
	}
	if(Input.GetKey(KeyCode.A)){
		GetComponent<Rigidbody2D>().velocity = new Vector2(-moveSpeed,GetComponent<Rigidbody2D>().velocity.y);
		
	}
}

}